kernel_samsung_a53x/drivers/crypto
Quanyang Wang 54cbe5cd57 crypto: xilinx - call finalize with bh disabled
[ Upstream commit a853450bf4c752e664abab0b2fad395b7ad7701c ]

When calling crypto_finalize_request, BH should be disabled to avoid
triggering the following calltrace:

    ------------[ cut here ]------------
    WARNING: CPU: 2 PID: 74 at crypto/crypto_engine.c:58 crypto_finalize_request+0xa0/0x118
    Modules linked in: cryptodev(O)
    CPU: 2 PID: 74 Comm: firmware:zynqmp Tainted: G           O       6.8.0-rc1-yocto-standard #323
    Hardware name: ZynqMP ZCU102 Rev1.0 (DT)
    pstate: 40000005 (nZcv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--)
    pc : crypto_finalize_request+0xa0/0x118
    lr : crypto_finalize_request+0x104/0x118
    sp : ffffffc085353ce0
    x29: ffffffc085353ce0 x28: 0000000000000000 x27: ffffff8808ea8688
    x26: ffffffc081715038 x25: 0000000000000000 x24: ffffff880100db00
    x23: ffffff880100da80 x22: 0000000000000000 x21: 0000000000000000
    x20: ffffff8805b14000 x19: ffffff880100da80 x18: 0000000000010450
    x17: 0000000000000000 x16: 0000000000000000 x15: 0000000000000000
    x14: 0000000000000003 x13: 0000000000000000 x12: ffffff880100dad0
    x11: 0000000000000000 x10: ffffffc0832dcd08 x9 : ffffffc0812416d8
    x8 : 00000000000001f4 x7 : ffffffc0830d2830 x6 : 0000000000000001
    x5 : ffffffc082091000 x4 : ffffffc082091658 x3 : 0000000000000000
    x2 : ffffffc7f9653000 x1 : 0000000000000000 x0 : ffffff8802d20000
    Call trace:
     crypto_finalize_request+0xa0/0x118
     crypto_finalize_aead_request+0x18/0x30
     zynqmp_handle_aes_req+0xcc/0x388
     crypto_pump_work+0x168/0x2d8
     kthread_worker_fn+0xfc/0x3a0
     kthread+0x118/0x138
     ret_from_fork+0x10/0x20
    irq event stamp: 40
    hardirqs last  enabled at (39): [<ffffffc0812416f8>] _raw_spin_unlock_irqrestore+0x70/0xb0
    hardirqs last disabled at (40): [<ffffffc08122d208>] el1_dbg+0x28/0x90
    softirqs last  enabled at (36): [<ffffffc080017dec>] kernel_neon_begin+0x8c/0xf0
    softirqs last disabled at (34): [<ffffffc080017dc0>] kernel_neon_begin+0x60/0xf0
    ---[ end trace 0000000000000000 ]---

Fixes: 4d96f7d48131 ("crypto: xilinx - Add Xilinx AES driver")
Signed-off-by: Quanyang Wang <quanyang.wang@windriver.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-11-19 08:44:52 +01:00
..
allwinner Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
amcc Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
amlogic Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
axis Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
bcm Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
caam crypto: caam/jr - fix Chacha20 + Poly1305 self test failure 2024-11-18 11:43:03 +01:00
cavium Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
ccp crypto: ccp - Fix null pointer dereference in __sev_platform_shutdown_locked 2024-11-18 12:13:32 +01:00
ccree Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
chelsio Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
fmp drivers: fmp: remove failing command 2024-06-15 16:28:48 -03:00
fmp_simulator Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
hisilicon crypto: hisilicon/hpre - Fix a erroneous check after snprintf() 2024-11-18 11:43:02 +01:00
inside-secure Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
marvell Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
mediatek Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
nx Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
qat crypto: qat - increase size of buffers 2024-11-18 11:43:03 +01:00
qce Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
rockchip Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
stm32 crypto: stm32/crc32 - fix parsing list of devices 2024-11-18 12:13:10 +01:00
ux500 Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
virtio crypto: virtio/akcipher - Fix stack overflow on memcpy 2024-11-18 23:18:28 +01:00
vmx Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
xilinx crypto: xilinx - call finalize with bh disabled 2024-11-19 08:44:52 +01:00
atmel-aes-regs.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
atmel-aes.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
atmel-authenc.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
atmel-ecc.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
atmel-i2c.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
atmel-i2c.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
atmel-sha-regs.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
atmel-sha.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
atmel-sha204a.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
atmel-tdes-regs.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
atmel-tdes.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
exynos-rng.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
geode-aes.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
geode-aes.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
hifn_795x.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
img-hash.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
ixp4xx_crypto.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
Kconfig Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
Makefile Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
mxs-dcp.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
n2_asm.S Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
n2_core.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
n2_core.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
omap-aes-gcm.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
omap-aes.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
omap-aes.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
omap-crypto.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
omap-crypto.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
omap-des.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
omap-sham.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
padlock-aes.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
padlock-sha.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
picoxcell_crypto.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
picoxcell_crypto_regs.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
qcom-rng.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
s5p-sss.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
sa2ul.c crypto: sa2ul - Return crypto_aead_setkey to transfer the error 2024-11-18 12:12:26 +01:00
sa2ul.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
sahara.c crypto: sahara - do not resize req->src when doing hash operations 2024-11-18 12:12:27 +01:00
talitos.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
talitos.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00