[PATCH] crypto: xilinx - clear AES key buffer before freeing it

Thomas Huth thuth at redhat.com
Wed Sep 9 01:53:36 PDT 2026


On 08/09/2026 21.16, Thorsten Blum wrote:
> In xilinx_aes_aead_exit(), the AES key buffer is freed without being
> cleared, which allows key material to remain in memory. Use
> kfree_sensitive() to clear the buffer before freeing it.
> 
> Fixes: c315cb0005be ("crypto: xilinx - Change coherent DMA to streaming DMA API")
> Cc: stable at vger.kernel.org
> Signed-off-by: Thorsten Blum <blum at kernel.org>
> ---
>   drivers/crypto/xilinx/zynqmp-aes-gcm.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/crypto/xilinx/zynqmp-aes-gcm.c b/drivers/crypto/xilinx/zynqmp-aes-gcm.c
> index d54c268dfe34..ebee37dddb1f 100644
> --- a/drivers/crypto/xilinx/zynqmp-aes-gcm.c
> +++ b/drivers/crypto/xilinx/zynqmp-aes-gcm.c
> @@ -766,7 +766,7 @@ static void xilinx_aes_aead_exit(struct crypto_aead *aead)
>   	struct xilinx_aead_tfm_ctx *tfm_ctx = crypto_tfm_ctx(tfm);
>   
>   	dma_unmap_single(tfm_ctx->dev, tfm_ctx->key_dma_addr, AES_KEYSIZE_256, DMA_TO_DEVICE);
> -	kfree(tfm_ctx->key);
> +	kfree_sensitive(tfm_ctx->key);
>   	if (tfm_ctx->fbk_cipher) {
>   		crypto_free_aead(tfm_ctx->fbk_cipher);
>   		tfm_ctx->fbk_cipher = NULL;
Reviewed-by: Thomas Huth <thuth at redhat.com>




More information about the linux-arm-kernel mailing list