[PATCH 07/15] crypto: zynqmp-aes-gcm: Avoid Encrypt request to fallback for authsize < 16
Harsh Jain
h.jain at amd.com
Wed Oct 29 03:21:50 PDT 2025
Encrypt requests can be handled by driver when authsize is less than 16.
Signed-off-by: Harsh Jain <h.jain at amd.com>
---
drivers/crypto/xilinx/zynqmp-aes-gcm.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/drivers/crypto/xilinx/zynqmp-aes-gcm.c b/drivers/crypto/xilinx/zynqmp-aes-gcm.c
index e64316d9cabf..3b346a1c9f7e 100644
--- a/drivers/crypto/xilinx/zynqmp-aes-gcm.c
+++ b/drivers/crypto/xilinx/zynqmp-aes-gcm.c
@@ -150,7 +150,7 @@ static int zynqmp_aes_aead_cipher(struct aead_request *req)
}
} else {
if (hwreq->op == ZYNQMP_AES_ENCRYPT)
- data_size = data_size + ZYNQMP_AES_AUTH_SIZE;
+ data_size = data_size + crypto_aead_authsize(aead);
else
data_size = data_size - ZYNQMP_AES_AUTH_SIZE;
@@ -178,8 +178,8 @@ static int zynqmp_fallback_check(struct zynqmp_aead_tfm_ctx *tfm_ctx,
int need_fallback = 0;
struct zynqmp_aead_req_ctx *rq_ctx = aead_request_ctx(req);
- if (tfm_ctx->authsize != ZYNQMP_AES_AUTH_SIZE)
- need_fallback = 1;
+ if (tfm_ctx->authsize != ZYNQMP_AES_AUTH_SIZE && rq_ctx->op == ZYNQMP_AES_DECRYPT)
+ return 1;
if (tfm_ctx->keysrc == ZYNQMP_AES_KUP_KEY &&
tfm_ctx->keylen != ZYNQMP_AES_KEY_SIZE) {
--
2.49.1
More information about the linux-arm-kernel
mailing list