mirror of
https://git.yoctoproject.org/poky
synced 2026-09-19 09:49:33 +02:00
openssl: fix register trampling on aarch64
Backport a patch from upstream to fix register tramping on aarch64. (From OE-Core rev: 9005321e37030d916f4f26e7201e2f86c85ebdbd) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
a9f345c9ae
commit
fca4f4f712
52
meta/recipes-connectivity/openssl/openssl/aarch64-regs.patch
Normal file
52
meta/recipes-connectivity/openssl/openssl/aarch64-regs.patch
Normal file
@@ -0,0 +1,52 @@
|
|||||||
|
From 3ad2277e4522d363ae31a1888531915bb68964dc Mon Sep 17 00:00:00 2001
|
||||||
|
From: Julian Andres Klode <julian.klode@canonical.com>
|
||||||
|
Date: Sat, 18 Jan 2025 21:12:45 +0100
|
||||||
|
Subject: [PATCH] Restore correct registers in aarch64 AES-CTR code
|
||||||
|
|
||||||
|
Commit 1d1ca79fe35dbe5c05faed5a2ef8c4de9c5adc49 introduced
|
||||||
|
save and restore for the registers, saving them as
|
||||||
|
|
||||||
|
stp d8,d9,[sp, #16]
|
||||||
|
stp d10,d11,[sp, #32]
|
||||||
|
stp d12,d13,[sp, #48]
|
||||||
|
stp d14,d15,[sp, #64]
|
||||||
|
|
||||||
|
But the restore code was inadvertently typoed:
|
||||||
|
|
||||||
|
ldp d8,d9,[sp, #16]
|
||||||
|
ldp d10,d11,[sp, #32]
|
||||||
|
ldp d12,d13,[sp, #48]
|
||||||
|
ldp d15,d16,[sp, #64]
|
||||||
|
|
||||||
|
Restoring [sp, #64] into d15,d16 instead of d14,d15.
|
||||||
|
|
||||||
|
Fixes: #26466
|
||||||
|
|
||||||
|
CLA: trivial
|
||||||
|
|
||||||
|
Reviewed-by: Kurt Roeckx <kurt@roeckx.be>
|
||||||
|
Reviewed-by: Paul Dale <ppzgs1@gmail.com>
|
||||||
|
Reviewed-by: Tomas Mraz <tomas@openssl.org>
|
||||||
|
(Merged from https://github.com/openssl/openssl/pull/26469)
|
||||||
|
|
||||||
|
(cherry picked from commit 5261f3ca41cda7ad5767e399e9a2dc008bbad5d6)
|
||||||
|
|
||||||
|
Upstream-Status: Backport
|
||||||
|
Signed-off-by: Ross Burton <ross.burton@arm.com>
|
||||||
|
---
|
||||||
|
crypto/aes/asm/aesv8-armx.pl | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/crypto/aes/asm/aesv8-armx.pl b/crypto/aes/asm/aesv8-armx.pl
|
||||||
|
index 33a2dd53dae19..dc019b04ccd25 100755
|
||||||
|
--- a/crypto/aes/asm/aesv8-armx.pl
|
||||||
|
+++ b/crypto/aes/asm/aesv8-armx.pl
|
||||||
|
@@ -2493,7 +2493,7 @@ ()
|
||||||
|
ldp d8,d9,[sp, #16]
|
||||||
|
ldp d10,d11,[sp, #32]
|
||||||
|
ldp d12,d13,[sp, #48]
|
||||||
|
- ldp d15,d16,[sp, #64]
|
||||||
|
+ ldp d14,d15,[sp, #64]
|
||||||
|
ldr x29,[sp],#80
|
||||||
|
ret
|
||||||
|
.size ${prefix}_ctr32_encrypt_blocks_unroll12_eor3,.-${prefix}_ctr32_encrypt_blocks_unroll12_eor3
|
||||||
@@ -13,6 +13,7 @@ SRC_URI = "http://www.openssl.org/source/openssl-${PV}.tar.gz \
|
|||||||
file://0001-Configure-do-not-tweak-mips-cflags.patch \
|
file://0001-Configure-do-not-tweak-mips-cflags.patch \
|
||||||
file://0001-Added-handshake-history-reporting-when-test-fails.patch \
|
file://0001-Added-handshake-history-reporting-when-test-fails.patch \
|
||||||
file://0001-Fix-builds-on-riscv64-using-musl.patch \
|
file://0001-Fix-builds-on-riscv64-using-musl.patch \
|
||||||
|
file://aarch64-regs.patch \
|
||||||
"
|
"
|
||||||
|
|
||||||
SRC_URI:append:class-nativesdk = " \
|
SRC_URI:append:class-nativesdk = " \
|
||||||
|
|||||||
Reference in New Issue
Block a user