Hi all,

I have recently discovered a bug in the BaseLib's implementation of
SetJump and LongJump; the offsets listed in the assembly files are 8
bytes off, causing the functions to read/write 8 bytes past the end of
the jump buffer. More details can be found in the commit message.

I must admit I am a bit surprised this has not bee caught before,
especially since the original implementation dates some 7 years back;
if there is something obvious that I am missing, please let me
know. Also, I am cc'ing all the people who signed off or reviewed the
original commit.

Note that this is my first contribution to EDK-II; I have tried to
follow the guidelines as closely as possible, but if there is still
something wrong with formatting etc., let me know and I shall submit a
v2 with the issues fixed. That being said, I did run PatchCheck.py and
it reported no errors.

Cheers!
 -Jan Bobek

Jan Bobek (1):
  MdePkg/BaseLib: Fix invalid memory access in AArch64 SetJump/LongJump

 MdePkg/Library/BaseLib/AArch64/SetJumpLongJump.S   | 8 ++++----
 MdePkg/Library/BaseLib/AArch64/SetJumpLongJump.asm | 8 ++++----
 2 files changed, 8 insertions(+), 8 deletions(-)

-- 
2.28.0



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#65725): https://edk2.groups.io/g/devel/message/65725
Mute This Topic: https://groups.io/mt/77195591/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-


Reply via email to