OSDN Git Service

crypto/arm64: aes-ce-gcm - add missing kernel_neon_begin/end pair
authorArd Biesheuvel <ard.biesheuvel@linaro.org>
Fri, 27 Jul 2018 12:59:15 +0000 (14:59 +0200)
committerWill Deacon <will.deacon@arm.com>
Tue, 31 Jul 2018 12:20:30 +0000 (13:20 +0100)
commitc7513c2a2714204d3588ecaa170ae628fd0d217e
treecd4d59d8937424000afd8d7e0a138f8ebd82289b
parentacb1872577b346bd15ab3a3f8dff780d6cca4b70
crypto/arm64: aes-ce-gcm - add missing kernel_neon_begin/end pair

Calling pmull_gcm_encrypt_block() requires kernel_neon_begin() and
kernel_neon_end() to be used since the routine touches the NEON
register file. Add the missing calls.

Also, since NEON register contents are not preserved outside of
a kernel mode NEON region, pass the key schedule array again.

Fixes: 7c50136a8aba ("crypto: arm64/aes-ghash - yield NEON after every ...")
Acked-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Signed-off-by: Will Deacon <will.deacon@arm.com>
arch/arm64/crypto/ghash-ce-glue.c