diff options
author | Herbert Xu <herbert@gondor.apana.org.au> | 2020-10-15 14:31:53 +1100 |
---|---|---|
committer | Herbert Xu <herbert@gondor.apana.org.au> | 2020-10-30 17:35:02 +1100 |
commit | ad0bb4e4d226e76950531cb4260402bbbb8997b5 (patch) | |
tree | 6bba4dce1f672cf6d96a9d6f2194045a0b84dad1 /drivers/crypto/sa2ul.h | |
parent | 633e507fba02d62ed573a8dfb430fc3b881b23d6 (diff) |
crypto: sa2ul - Reduce stack usage
This patch reduces the stack usage in sa2ul:
1. Move the exported sha state into sa_prepare_iopads so that it
can occupy the same space as the k_pad buffer.
2. Use one buffer for ipad/opad in sa_prepare_iopads.
3. Remove ipad/opad buffer from sa_set_sc_auth.
4. Use async skcipher fallback and remove on-stack request from
sa_cipher_run.
Reported-by: kernel test robot <lkp@intel.com>
Fixes: d2c8ac187fc9 ("crypto: sa2ul - Add AEAD algorithm support")
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'drivers/crypto/sa2ul.h')
-rw-r--r-- | drivers/crypto/sa2ul.h | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/drivers/crypto/sa2ul.h b/drivers/crypto/sa2ul.h index 7f7e3fe60d11..bb40df3876e5 100644 --- a/drivers/crypto/sa2ul.h +++ b/drivers/crypto/sa2ul.h @@ -12,10 +12,8 @@ #ifndef _K3_SA2UL_ #define _K3_SA2UL_ -#include <linux/interrupt.h> -#include <linux/skbuff.h> -#include <linux/hw_random.h> #include <crypto/aes.h> +#include <crypto/sha.h> #define SA_ENGINE_ENABLE_CONTROL 0x1000 @@ -311,7 +309,7 @@ struct sa_tfm_ctx { struct crypto_shash *shash; /* for fallback */ union { - struct crypto_sync_skcipher *skcipher; + struct crypto_skcipher *skcipher; struct crypto_ahash *ahash; struct crypto_aead *aead; } fallback; |