OSDN Git Service

crypto: arm64/aes-ccm - yield NEON when processing auth-only data
authorArd Biesheuvel <ardb@kernel.org>
Fri, 27 Aug 2021 07:03:39 +0000 (09:03 +0200)
committerHerbert Xu <herbert@gondor.apana.org.au>
Fri, 17 Sep 2021 03:05:10 +0000 (11:05 +0800)
commit36a916af641dc71ef7d4b98417bf4019ddeb4ebe
tree069d49cbb87cf43294ea53262af93902798d9026
parent676e508122d96aec199ab7181fd62c592c2cb8d5
crypto: arm64/aes-ccm - yield NEON when processing auth-only data

In SIMD accelerated crypto drivers, we typically yield the SIMD unit
after processing 4 KiB of input, to avoid scheduling blackouts caused by
the fact that claiming the SIMD unit disables preemption as well as
softirq processing.

The arm64 CCM driver does this implicitly for the ciphertext, due to the
fact that the skcipher API never processes more than a single page at a
time. However, the scatterwalk performed by this driver when processing
the authenticate-only data will keep the SIMD unit occupied until it
completes.

So cap the scatterwalk steps to 4 KiB.

Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
arch/arm64/crypto/aes-ce-ccm-glue.c