* [PATCH] crypto: xilinx - clear AES key buffer before freeing it
@ 2026-09-08 19:16 Thorsten Blum
2026-09-09 8:53 ` Thomas Huth
0 siblings, 1 reply; 2+ messages in thread
From: Thorsten Blum @ 2026-09-08 19:16 UTC (permalink / raw)
To: Herbert Xu, David S. Miller, Michal Simek, Harsh Jain,
Bjorn Helgaas, Takashi Sakamoto,
Uwe Kleine-König (The Capable Hub)
Cc: Thorsten Blum, Danilo Krummrich, linux-crypto, linux-arm-kernel,
linux-kernel
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@vger.kernel.org
Signed-off-by: Thorsten Blum <blum@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;
^ permalink raw reply [flat|nested] 2+ messages in thread* Re: [PATCH] crypto: xilinx - clear AES key buffer before freeing it
2026-09-08 19:16 [PATCH] crypto: xilinx - clear AES key buffer before freeing it Thorsten Blum
@ 2026-09-09 8:53 ` Thomas Huth
0 siblings, 0 replies; 2+ messages in thread
From: Thomas Huth @ 2026-09-09 8:53 UTC (permalink / raw)
To: Thorsten Blum, Herbert Xu, David S. Miller, Michal Simek,
Harsh Jain, Bjorn Helgaas, Takashi Sakamoto,
Uwe Kleine-König (The Capable Hub)
Cc: Danilo Krummrich, linux-crypto, linux-arm-kernel, linux-kernel
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@vger.kernel.org
> Signed-off-by: Thorsten Blum <blum@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@redhat.com>
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2026-09-09 8:53 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-09-08 19:16 [PATCH] crypto: xilinx - clear AES key buffer before freeing it Thorsten Blum
2026-09-09 8:53 ` Thomas Huth
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®