linux-stable/arch/arm64/crypto
Sami Tolvanen c50d32859e arm64: Add types to indirect called assembly functions
With CONFIG_CFI_CLANG, assembly functions indirectly called from C
code must be annotated with type identifiers to pass CFI checking. Use
SYM_TYPED_FUNC_START for the indirectly called functions, and ensure
we emit `bti c` also with SYM_TYPED_FUNC_START.

Signed-off-by: Sami Tolvanen <samitolvanen@google.com>
Reviewed-by: Kees Cook <keescook@chromium.org>
Tested-by: Kees Cook <keescook@chromium.org>
Tested-by: Nathan Chancellor <nathan@kernel.org>
Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Tested-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Signed-off-by: Kees Cook <keescook@chromium.org>
Link: https://lore.kernel.org/r/20220908215504.3686827-10-samitolvanen@google.com
2022-09-26 10:13:13 -07:00
..
.gitignore SPDX patches for 5.7-rc1. 2020-04-03 13:12:26 -07: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 - avoid by-ref argument for ce_aes_ccm_auth_data 2021-09-17 11:05:11 +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: remove CRYPTO_TFM_RES_BAD_KEY_LEN 2020-01-09 11:30:53 +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: arm64/aes-ce-cipher - use AES library as fallback 2019-07-26 14:58:09 +10: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-xctr - Improve readability of XCTR and CTR modes 2022-06-10 16:40:17 +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-xts - use plain NEON for non-power-of-2 input sizes 2022-02-05 15:10:51 +11: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/crc-t10dif - move NEON yield to C code 2021-02-10 17:55:58 +11: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 arm64: Add types to indirect called assembly functions 2022-09-26 10:13:13 -07:00
ghash-ce-glue.c crypto: arm64/gcm-aes-ce - remove non-SIMD fallback path 2021-09-17 11:05:10 +08:00
Kconfig crypto: arm64/gcm - Select AEAD for GHASH_ARM64_CE 2022-06-30 15:56:58 +08:00
Makefile crypto: arm64/polyval - Add PMULL accelerated implementation of POLYVAL 2022-06-10 16:40:18 +08:00
nh-neon-core.S crypto: arm64 - Use modern annotations for assembly functions 2019-12-20 14:58:35 +08:00
nhpoly1305-neon-glue.c crypto: arch/nhpoly1305 - process in explicit 4k chunks 2020-04-30 15:16:59 +10: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-ce - make dependent on sm3 library 2022-01-28 16:51:10 +11: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: arm64/sm4-ce - rename to sm4-ce-cipher 2022-04-08 16:12:47 +08:00
sm4-ce-core.S crypto: arm64/sm4 - add ARMv8 Crypto Extensions implementation 2022-04-08 16:13:29 +08:00
sm4-ce-glue.c crypto: arm64/sm4 - add ARMv8 Crypto Extensions implementation 2022-04-08 16:13:29 +08:00
sm4-neon-core.S crypto: arm64/sm4 - add ARMv8 NEON implementation 2022-04-08 16:13:13 +08:00
sm4-neon-glue.c crypto: arm64/sm4 - add ARMv8 NEON implementation 2022-04-08 16:13:13 +08:00