crypto: arm64/aes-neonbs - fix crash with CFI enabled
authorEric Biggers <ebiggers@google.com>
Mon, 27 Feb 2023 06:32:23 +0000 (22:32 -0800)
committerHerbert Xu <herbert@gondor.apana.org.au>
Tue, 14 Mar 2023 09:06:44 +0000 (17:06 +0800)
commit47446d7cd42358ca7d7a544f2f7823db03f616ff
tree4499c830347737ea8d1104c4d783f209de13751c
parenta1862c3b0875a0cdfa0e30c508855324577e124b
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: c50d32859e70 ("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>
arch/arm64/crypto/aes-neonbs-core.S