linux-stable/arch/arm64/crypto
Eric Biggers 47446d7cd4 crypto: arm64/aes-neonbs - fix crash with CFI enabled
aesbs_ecb_encrypt(), aesbs_ecb_decrypt(), aesbs_xts_encrypt(), and
aesbs_xts_decrypt() are called via indirect function calls.  Therefore
they need to use SYM_TYPED_FUNC_START instead of SYM_FUNC_START to cause
their type hashes to be emitted when the kernel is built with
CONFIG_CFI_CLANG=y.  Otherwise, the code crashes with a CFI failure if
the compiler doesn't happen to optimize out the indirect calls.

Fixes: c50d32859e ("arm64: Add types to indirect called assembly functions")
Cc: stable@vger.kernel.org
Signed-off-by: Eric Biggers <ebiggers@google.com>
Reviewed-by: Ard Biesheuvel <ardb@kernel.org>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2023-03-14 17:06:44 +08:00
..
.gitignore SPDX patches for 5.7-rc1. 2020-04-03 13:12:26 -07:00
Kconfig crypto: move gf128mul library into lib/crypto 2022-11-11 18:14:59 +08:00
Makefile crypto: arm64/sm4 - add CE implementation for GCM mode 2022-11-04 17:35:44 +08:00
aes-ce-ccm-core.S crypto: arm64/aes-ccm - avoid by-ref argument for ce_aes_ccm_auth_data 2021-09-17 11:05:11 +08:00
aes-ce-ccm-glue.c crypto: arm64/aes-ccm - Rewrite skcipher walker loop 2023-02-10 17:20:19 +08:00
aes-ce-core.S crypto: arm64 - Use modern annotations for assembly functions 2019-12-20 14:58:35 +08:00
aes-ce-glue.c crypto: Prepare to move crypto_tfm_ctx 2022-12-02 18:12:40 +08:00
aes-ce-setkey.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
aes-ce.S arm64: crypto: Modernize names for AES function macros 2020-03-09 17:35:04 +00:00
aes-cipher-core.S crypto: arm64 - Use modern annotations for assembly functions 2019-12-20 14:58:35 +08:00
aes-cipher-glue.c crypto: Prepare to move crypto_tfm_ctx 2022-12-02 18:12:40 +08:00
aes-glue.c crypto: arm64/aes-xctr - Improve readability of XCTR and CTR modes 2022-06-10 16:40:17 +08:00
aes-modes.S crypto: arm64/aes-modes - use frame_push/pop macros consistently 2022-12-09 18:45:00 +08:00
aes-neon.S crypto: arm64/aes-neon - Fix typo in comment 2022-06-30 15:56:57 +08:00
aes-neonbs-core.S crypto: arm64/aes-neonbs - fix crash with CFI enabled 2023-03-14 17:06:44 +08:00
aes-neonbs-glue.c crypto: arm64/aes-neonbs-xts - use plain NEON for non-power-of-2 input sizes 2022-02-05 15:10:51 +11:00
chacha-neon-core.S crypto: arm64/chacha - simplify tail block handling 2020-11-13 20:38:55 +11:00
chacha-neon-glue.c crypto: arch/lib - limit simd usage to 4k chunks 2020-04-30 15:16:59 +10:00
crct10dif-ce-core.S crypto: arm64/crct10dif - use frame_push/pop macros consistently 2022-12-09 18:45:00 +08:00
crct10dif-ce-glue.c crypto: arm64/crc-t10dif - move NEON yield to C code 2021-02-10 17:55:58 +11:00
ghash-ce-core.S crypto: arm64/ghash-ce - use frame_push/pop macros consistently 2022-12-09 18:45:00 +08:00
ghash-ce-glue.c crypto: arm64/gcm - add RFC4106 support 2023-01-20 18:29:31 +08:00
nh-neon-core.S crypto: arm64/nhpoly1305 - eliminate unnecessary CFI wrapper 2022-11-25 17:39:19 +08:00
nhpoly1305-neon-glue.c crypto: arm64/nhpoly1305 - eliminate unnecessary CFI wrapper 2022-11-25 17:39:19 +08:00
poly1305-armv8.pl crypto: arm64/poly1305-neon - reorder PAC authentication with SP update 2020-11-06 14:29:11 +11:00
poly1305-glue.c crypto: arm64/poly1305 - fix a read out-of-bound 2022-07-29 18:29:17 +08:00
polyval-ce-core.S crypto: arm64/polyval - Add PMULL accelerated implementation of POLYVAL 2022-06-10 16:40:18 +08:00
polyval-ce-glue.c crypto: arm64/polyval - Add PMULL accelerated implementation of POLYVAL 2022-06-10 16:40:18 +08:00
sha1-ce-core.S arm64: fpsimd: run kernel mode NEON with softirqs disabled 2021-04-12 11:55:34 +01:00
sha1-ce-glue.c crypto: arm64/sha1-ce - simplify NEON yield 2021-02-10 17:55:57 +11:00
sha2-ce-core.S arm64: fpsimd: run kernel mode NEON with softirqs disabled 2021-04-12 11:55:34 +01:00
sha2-ce-glue.c crypto: arm64/sha2-ce - simplify NEON yield 2021-02-10 17:55:57 +11:00
sha3-ce-core.S arm64: fpsimd: run kernel mode NEON with softirqs disabled 2021-04-12 11:55:34 +01:00
sha3-ce-glue.c crypto: arm64 - cleanup comments 2022-03-09 15:12:32 +12:00
sha256-glue.c crypto: sha - split sha.h into sha1.h and sha2.h 2020-11-20 14:45:33 +11:00
sha512-armv8.pl crypto: arm64 - cleanup comments 2022-03-09 15:12:32 +12:00
sha512-ce-core.S arm64: fpsimd: run kernel mode NEON with softirqs disabled 2021-04-12 11:55:34 +01:00
sha512-ce-glue.c crypto: arm64 - cleanup comments 2022-03-09 15:12:32 +12:00
sha512-glue.c crypto: sha - split sha.h into sha1.h and sha2.h 2020-11-20 14:45:33 +11:00
sm3-ce-core.S arm64: Add types to indirect called assembly functions 2022-09-26 10:13:13 -07:00
sm3-ce-glue.c crypto: arm64/sm3 - raise the priority of the CE implementation 2022-11-04 17:33:22 +08:00
sm3-neon-core.S crypto: arm64/sm3 - fix possible crash with CFI enabled 2022-11-25 17:39:19 +08:00
sm3-neon-glue.c crypto: arm64/sm3 - add NEON assembly implementation 2022-11-04 17:34:21 +08:00
sm4-ce-asm.h crypto: arm64/sm4 - refactor and simplify CE implementation 2022-11-04 17:34:31 +08:00
sm4-ce-ccm-core.S crypto: arm64/sm4 - fix possible crash with CFI enabled 2022-12-30 17:57:42 +08:00
sm4-ce-ccm-glue.c crypto: arm64/sm4-ccm - Rewrite skcipher walker loop 2023-02-10 17:20:19 +08:00
sm4-ce-cipher-core.S crypto: arm64/sm4-ce - rename to sm4-ce-cipher 2022-04-08 16:12:47 +08:00
sm4-ce-cipher-glue.c crypto: Prepare to move crypto_tfm_ctx 2022-12-02 18:12:40 +08:00
sm4-ce-core.S crypto: arm64/sm4 - add CE implementation for cmac/xcbc/cbcmac 2022-11-04 17:34:43 +08:00
sm4-ce-gcm-core.S crypto: arm64/sm4 - fix possible crash with CFI enabled 2022-12-30 17:57:42 +08:00
sm4-ce-gcm-glue.c crypto: arm64/sm4-gcm - Fix possible crash in GCM cryption 2023-02-10 17:20:19 +08:00
sm4-ce-glue.c crypto: arm64/sm4 - add CE implementation for cmac/xcbc/cbcmac 2022-11-04 17:34:43 +08:00
sm4-ce.h crypto: arm64/sm4 - export reusable CE acceleration functions 2022-11-04 17:34:42 +08:00
sm4-neon-core.S crypto: arm64/sm4 - refactor and simplify NEON implementation 2022-11-04 17:34:21 +08:00
sm4-neon-glue.c crypto: arm64/sm4 - refactor and simplify NEON implementation 2022-11-04 17:34:21 +08:00