[PATCH v5 5/5] crypto: arm64/aes-ccm - avoid by-ref argument for ce_aes_ccm_auth_data
Eric Biggers
ebiggers at kernel.org
Mon May 24 14:53:14 PDT 2021
On Fri, May 21, 2021 at 12:20:53PM +0200, Ard Biesheuvel wrote:
> With the SIMD code path removed, we can clean up the CCM auth-only path
> a bit further, by passing the 'macp' input buffer pointer by value,
> rather than by reference, and taking the output value from the
> function's return value.
>
> This way, the compiler is no longer forced to allocate macp on the
> stack. This is not expected to make any difference in practice, it just
> makes for slightly cleaner code.
>
> Signed-off-by: Ard Biesheuvel <ardb at kernel.org>
> ---
> arch/arm64/crypto/aes-ce-ccm-core.S | 23 ++++++++++----------
> arch/arm64/crypto/aes-ce-ccm-glue.c | 17 +++++----------
> 2 files changed, 17 insertions(+), 23 deletions(-)
>
> diff --git a/arch/arm64/crypto/aes-ce-ccm-core.S b/arch/arm64/crypto/aes-ce-ccm-core.S
> index 8adff299fcd3..b03f7f71f893 100644
> --- a/arch/arm64/crypto/aes-ce-ccm-core.S
> +++ b/arch/arm64/crypto/aes-ce-ccm-core.S
> @@ -12,22 +12,21 @@
> .arch armv8-a+crypto
>
> /*
> - * void ce_aes_ccm_auth_data(u8 mac[], u8 const in[], u32 abytes,
> - * u32 *macp, u8 const rk[], u32 rounds);
> + * u32 ce_aes_ccm_auth_data(u8 mac[], u8 const in[], u32 abytes,
> + * u32 macp, u8 const rk[], u32 rounds);
How is this different from 'u8 mac[]' which is already one of the parameters?
- Eric
More information about the linux-arm-kernel
mailing list