Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit39e4716

Browse files
jlintonarmctmarinas
authored andcommitted
crypto: arm64: Use x16 with indirect branch to bti_c
The AES code uses a 'br x7' as part of a function called bya macro. That branch needs a bti_j as a target. This resultsin a panic as seen below. Using x16 (or x17) with an indirectbranch keeps the target bti_c. Bad mode in Synchronous Abort handler detected on CPU1, code 0x34000003 -- BTI CPU: 1 PID: 265 Comm: cryptomgr_test Not tainted 5.8.11-300.fc33.aarch64 #1 pstate:20400c0 (nzCv daif +PAN -UAO BTYPE=j-) pc : aesbs_encrypt8+0x0/0x5f0 [aes_neon_bs] lr : aesbs_xts_encrypt+0x48/0xe0 [aes_neon_bs] sp : ffff80001052b730 aesbs_encrypt8+0x0/0x5f0 [aes_neon_bs] __xts_crypt+0xb0/0x2dc [aes_neon_bs] xts_encrypt+0x28/0x3c [aes_neon_bs] crypto_skcipher_encrypt+0x50/0x84 simd_skcipher_encrypt+0xc8/0xe0 crypto_skcipher_encrypt+0x50/0x84 test_skcipher_vec_cfg+0x224/0x5f0 test_skcipher+0xbc/0x120 alg_test_skcipher+0xa0/0x1b0 alg_test+0x3dc/0x47c cryptomgr_test+0x38/0x60Fixes:0e89640 ("crypto: arm64 - Use modern annotations for assembly functions")Cc: <stable@vger.kernel.org> # 5.6.x-Signed-off-by: Jeremy Linton <jeremy.linton@arm.com>Suggested-by: Dave P Martin <Dave.Martin@arm.com>Reviewed-by: Ard Biesheuvel <ardb@kernel.org>Reviewed-by: Mark Brown <broonie@kernel.org>Link:https://lore.kernel.org/r/20201006163326.2780619-1-jeremy.linton@arm.comSigned-off-by: Catalin Marinas <catalin.marinas@arm.com>
1 parenta509a66 commit39e4716

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

‎arch/arm64/crypto/aes-neonbs-core.S‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -788,7 +788,7 @@ SYM_FUNC_START_LOCAL(__xts_crypt8)
788788

789789
0:movbskey, x21
790790
movrounds, x22
791-
brx7
791+
brx16
792792
SYM_FUNC_END(__xts_crypt8)
793793

794794
.macro__xts_crypt, do8, o0, o1, o2, o3, o4, o5, o6, o7
@@ -806,7 +806,7 @@ SYM_FUNC_END(__xts_crypt8)
806806
uzp1v30.4s, v30.4s, v25.4s
807807
ld1{v25.16b},[x24]
808808

809-
99:adrx7, \do8
809+
99:adrx16, \do8
810810
bl__xts_crypt8
811811

812812
ldpq16, q17,[sp, #.Lframe_local_offset]

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp