RE: [PATCH] crypto: xilinx - use kfree_sensitive() in cleanup paths
From: Jain, Harsh (AECG-SSW)
Date: Wed Sep 09 2026 - 05:45:49 EST
AMD General
> -----Original Message-----
> From: Thorsten Blum <blum@xxxxxxxxxx>
> Sent: Wednesday, September 9, 2026 12:30 AM
> To: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>; David S. Miller
> <davem@xxxxxxxxxxxxx>; Simek, Michal <michal.simek@xxxxxxx>; Jain,
> Harsh (AECG-SSW) <h.jain@xxxxxxx>; Uwe Kleine-König (The Capable Hub)
> <u.kleine-koenig@xxxxxxxxxxxx>; Danilo Krummrich <dakr@xxxxxxxxxx>;
> Takashi Sakamoto <o-takashi@xxxxxxxxxxxxx>
> Cc: Thorsten Blum <blum@xxxxxxxxxx>; linux-crypto@xxxxxxxxxxxxxxx; linux-
> arm-kernel@xxxxxxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx
> Subject: [PATCH] crypto: xilinx - use kfree_sensitive() in cleanup paths
>
>
>
> In zynqmp_aes_aead_cipher() and versal_aes_aead_cipher(), replace
> memzero_explicit() followed by kfree() with kfree_sensitive() to
> simplify the code.
>
> Signed-off-by: Thorsten Blum <blum@xxxxxxxxxx>
> ---
> drivers/crypto/xilinx/zynqmp-aes-gcm.c | 12 ++++--------
> 1 file changed, 4 insertions(+), 8 deletions(-)
>
> diff --git a/drivers/crypto/xilinx/zynqmp-aes-gcm.c
> b/drivers/crypto/xilinx/zynqmp-aes-gcm.c
> index ebee37dddb1f..d9bd6dcd23a6 100644
> --- a/drivers/crypto/xilinx/zynqmp-aes-gcm.c
> +++ b/drivers/crypto/xilinx/zynqmp-aes-gcm.c
> @@ -230,10 +230,8 @@ static int zynqmp_aes_aead_cipher(struct
> aead_request *req)
> }
>
> freemem:
> - memzero_explicit(kbuf, dma_size);
> - kfree(kbuf);
> - memzero_explicit(dmabuf, sizeof(struct zynqmp_aead_hw_req) +
> GCM_AES_IV_SIZE);
> - kfree(dmabuf);
> + kfree_sensitive(kbuf);
> + kfree_sensitive(dmabuf);
>
> return ret;
> }
> @@ -364,11 +362,9 @@ static int versal_aes_aead_cipher(struct aead_request
> *req)
> if (unlikely(dma_addr_hw_req))
> dma_unmap_single(dev, dma_addr_hw_req, dmabuf_size,
> DMA_BIDIRECTIONAL);
> buf2_free:
> - memzero_explicit(dmabuf, dmabuf_size);
> - kfree(dmabuf);
> + kfree_sensitive(dmabuf);
> buf1_free:
> - memzero_explicit(kbuf, kbuf_size);
> - kfree(kbuf);
> + kfree_sensitive(kbuf);
> err:
> return ret;
> }
Reviewed-by: Harsh Jain <h.jain@xxxxxxx>