]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
crypto: hisilicon - Fix dma_unmap_single() direction
authorThomas Fourier <fourier.thomas@gmail.com>
Mon, 30 Mar 2026 15:19:32 +0000 (17:19 +0200)
committerHerbert Xu <herbert@gondor.apana.org.au>
Sun, 12 Apr 2026 08:46:29 +0000 (16:46 +0800)
The direction used to map the buffer skreq->iv is DMA_TO_DEVICE but it is
unmapped with direction DMA_BIDIRECTIONAL in the error path.

Change the unmap to match the mapping.

Fixes: 915e4e8413da ("crypto: hisilicon - SEC security accelerator driver")
Cc: <stable@vger.kernel.org>
Signed-off-by: Thomas Fourier <fourier.thomas@gmail.com>
Reviewed-by: Thorsten Blum <thorsten.blum@linux.dev>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
drivers/crypto/hisilicon/sec/sec_algs.c

index 54e24fd7b9be9dcc3e9c001f9e8bdb03bc26b240..85eecbb40e7e79317a9f5722bb0273a687b06951 100644 (file)
@@ -844,7 +844,7 @@ err_free_elements:
        if (crypto_skcipher_ivsize(atfm))
                dma_unmap_single(info->dev, sec_req->dma_iv,
                                 crypto_skcipher_ivsize(atfm),
-                                DMA_BIDIRECTIONAL);
+                                DMA_TO_DEVICE);
 err_unmap_out_sg:
        if (split)
                sec_unmap_sg_on_err(skreq->dst, steps, splits_out,