public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: "gaoliming" <gaoliming@byosoft.com.cn>
To: <devel@edk2.groups.io>, <gaoliming@byosoft.com.cn>,
	"'Jan Bobek'" <jbobek@nvidia.com>,
	"'Kinney, Michael D'" <michael.d.kinney@intel.com>,
	"'Ard Biesheuvel'" <ard.biesheuvel@arm.com>
Cc: "'Leif Lindholm'" <leif@nuviainc.com>,
	"'Liu, Zhiguang'" <zhiguang.liu@intel.com>,
	"'Jeff Brasen'" <jbrasen@nvidia.com>,
	"'Ashish Singhal'" <ashishsingha@nvidia.com>
Subject: 回复: [edk2-devel] 回复: [PATCH v2 1/1] MdePkg/BaseLib: Fix invalid memory access in AArch64 SetJump/LongJump
Date: Tue, 13 Oct 2020 11:26:35 +0800	[thread overview]
Message-ID: <006901d6a110$a7e91f70$f7bb5e50$@byosoft.com.cn> (raw)
In-Reply-To: <163D68004C6050DB.25724@groups.io>

Pull request https://github.com/tianocore/edk2/pull/1007 has been merged. 

> -----邮件原件-----
> 发件人: bounce+27952+66140+4905953+8761045@groups.io
> <bounce+27952+66140+4905953+8761045@groups.io> 代表 gaoliming
> 发送时间: 2020年10月13日 9:10
> 收件人: 'Jan Bobek' <jbobek@nvidia.com>; 'Kinney, Michael D'
> <michael.d.kinney@intel.com>; 'Ard Biesheuvel' <ard.biesheuvel@arm.com>;
> devel@edk2.groups.io
> 抄送: 'Leif Lindholm' <leif@nuviainc.com>; 'Liu, Zhiguang'
> <zhiguang.liu@intel.com>; 'Jeff Brasen' <jbrasen@nvidia.com>; 'Ashish
> Singhal' <ashishsingha@nvidia.com>
> 主题: [edk2-devel] 回复: [PATCH v2 1/1] MdePkg/BaseLib: Fix invalid
> memory access in AArch64 SetJump/LongJump
> 
> Ack-by: Liming Gao <gaoliming@byosoft.com.cn>
> 
> I will merge this change today.
> 
> Thanks
> Liming
> > -----邮件原件-----
> > 发件人: Jan Bobek <jbobek@nvidia.com>
> > 发送时间: 2020年10月13日 2:55
> > 收件人: Kinney, Michael D <michael.d.kinney@intel.com>; Ard Biesheuvel
> > <ard.biesheuvel@arm.com>; devel@edk2.groups.io; Liming Gao
> > <gaoliming@byosoft.com.cn>
> > 抄送: Leif Lindholm <leif@nuviainc.com>; Liu, Zhiguang
> > <zhiguang.liu@intel.com>; Jeff Brasen <jbrasen@nvidia.com>; Ashish
> Singhal
> > <ashishsingha@nvidia.com>
> > 主题: Re: [PATCH v2 1/1] MdePkg/BaseLib: Fix invalid memory access in
> > AArch64 SetJump/LongJump
> >
> > Hey guys,
> >
> > just wondering, are we waiting for more reviews before this is good to
> > merge?
> >
> > Best,
> > -Jan
> >
> > Kinney, Michael D writes:
> > > No concerns.
> > >
> > > Acked-by: Michael D Kinney <michael.d.kinney@intel.com>
> > >
> > > Mike
> > >
> > >> -----Original Message-----
> > >> From: Ard Biesheuvel <ard.biesheuvel@arm.com>
> > >> Sent: Monday, October 5, 2020 7:33 AM
> > >> To: Jan Bobek <jbobek@nvidia.com>; devel@edk2.groups.io; Kinney,
> > Michael D <michael.d.kinney@intel.com>; Liming Gao
> > >> <gaoliming@byosoft.com.cn>
> > >> Cc: Leif Lindholm <leif@nuviainc.com>; Liu, Zhiguang
> > <zhiguang.liu@intel.com>; Jeff Brasen <jbrasen@nvidia.com>; Ashish
> Singhal
> > >> <ashishsingha@nvidia.com>
> > >> Subject: Re: [PATCH v2 1/1] MdePkg/BaseLib: Fix invalid memory access
> in
> > AArch64 SetJump/LongJump
> > >>
> > >> On 10/1/20 6:15 PM, Jan Bobek wrote:
> > >> > Correct the memory offsets used in REG_ONE/REG_PAIR macros to
> > >> > synchronize them with definition of the BASE_LIBRARY_JUMP_BUFFER
> > >> > structure on AArch64.
> > >> >
> > >> > The REG_ONE macro declares only a single 64-bit register be
> > >> > read/written; however, the subsequent offset is 16 bytes larger,
> > >> > creating an unused memory gap in the middle of the structure and
> > >> > causing SetJump/LongJump functions to read/write 8 bytes of memory
> > >> > past the end of the jump buffer struct.
> > >> >
> > >> > Signed-off-by: Jan Bobek <jbobek@nvidia.com>
> > >>
> > >> Thanks Jan,
> > >>
> > >> Reviewed-by: Ard Biesheuvel <ard.biesheuvel@arm.com>
> > >>
> > >> Liming, Michael: any concerns?
> > >>
> > >> Thanks,
> > >>
> > >>
> > >> > ---
> > >> >   MdePkg/Library/BaseLib/AArch64/SetJumpLongJump.S   | 8
> > ++++----
> > >> >   MdePkg/Library/BaseLib/AArch64/SetJumpLongJump.asm | 8
> > ++++----
> > >> >   2 files changed, 8 insertions(+), 8 deletions(-)
> > >> >
> > >> > diff --git a/MdePkg/Library/BaseLib/AArch64/SetJumpLongJump.S
> > b/MdePkg/Library/BaseLib/AArch64/SetJumpLongJump.S
> > >> > index 72cea259e913..deefdf526b95 100644
> > >> > --- a/MdePkg/Library/BaseLib/AArch64/SetJumpLongJump.S
> > >> > +++ b/MdePkg/Library/BaseLib/AArch64/SetJumpLongJump.S
> > >> > @@ -20,10 +20,10 @@ GCC_ASM_EXPORT(InternalLongJump)
> > >> >           REG_ONE  (x16,      96) /*IP0*/
> > >> >
> > >> >   #define FPR_LAYOUT                      \
> > >> > -        REG_PAIR ( d8,  d9, 112);       \
> > >> > -        REG_PAIR (d10, d11, 128);       \
> > >> > -        REG_PAIR (d12, d13, 144);       \
> > >> > -        REG_PAIR (d14, d15, 160);
> > >> > +        REG_PAIR ( d8,  d9, 104);       \
> > >> > +        REG_PAIR (d10, d11, 120);       \
> > >> > +        REG_PAIR (d12, d13, 136);       \
> > >> > +        REG_PAIR (d14, d15, 152);
> > >> >
> > >> >   #/**
> > >> >   #  Saves the current CPU context that can be restored with a call
> to
> > LongJump() and returns 0.#
> > >> > diff --git a/MdePkg/Library/BaseLib/AArch64/SetJumpLongJump.asm
> > b/MdePkg/Library/BaseLib/AArch64/SetJumpLongJump.asm
> > >> > index 20dd0f1b850f..df70f298998e 100644
> > >> > --- a/MdePkg/Library/BaseLib/AArch64/SetJumpLongJump.asm
> > >> > +++ b/MdePkg/Library/BaseLib/AArch64/SetJumpLongJump.asm
> > >> > @@ -19,10 +19,10 @@
> > >> >           REG_ONE  (x16,      #96) /*IP0*/
> > >> >
> > >> >   #define FPR_LAYOUT                       \
> > >> > -        REG_PAIR ( d8,  d9, #112);       \
> > >> > -        REG_PAIR (d10, d11, #128);       \
> > >> > -        REG_PAIR (d12, d13, #144);       \
> > >> > -        REG_PAIR (d14, d15, #160);
> > >> > +        REG_PAIR ( d8,  d9, #104);       \
> > >> > +        REG_PAIR (d10, d11, #120);       \
> > >> > +        REG_PAIR (d12, d13, #136);       \
> > >> > +        REG_PAIR (d14, d15, #152);
> > >> >
> > >> >   ;/**
> > >> >   ;  Saves the current CPU context that can be restored with a call
> to
> > LongJump() and returns 0.#
> > >> >
> 
> 
> 
> 
> 
> 
> 




      parent reply	other threads:[~2020-10-13  3:26 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-10-01 16:15 [PATCH v2 0/1] MdePkg/BaseLib: AArch64 SetJump/LongJump bugfix Jan Bobek
2020-10-01 16:15 ` [PATCH v2 1/1] MdePkg/BaseLib: Fix invalid memory access in AArch64 SetJump/LongJump Jan Bobek
2020-10-05 14:33   ` Ard Biesheuvel
2020-10-05 21:57     ` Michael D Kinney
2020-10-12 18:55       ` Jan Bobek
2020-10-13  1:09         ` 回复: " gaoliming
     [not found]         ` <163D68004C6050DB.25724@groups.io>
2020-10-13  3:26           ` gaoliming [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-list from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='006901d6a110$a7e91f70$f7bb5e50$@byosoft.com.cn' \
    --to=devel@edk2.groups.io \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox