Re: [PATCH v5 09/21] drivers: crypto: meson: process more than MAXDESCS descriptors

From: Corentin Labbe
Date: Fri Mar 22 2024 - 04:28:01 EST


Le Fri, Mar 01, 2024 at 04:29:24PM +0300, Alexey Romanov a écrit :
> 1. The old alhorithm was not designed to process a large
> amount of memory, and therefore gave incorrect results.
>
> 2. Not all Amlogic SoC's use 3 KEY/IV descriptors.
> Add keyiv descriptors count parameter to platform data.
>
> Signed-off-by: Alexey Romanov <avromanov@xxxxxxxxxxxxxxxxx>
> ---
> drivers/crypto/amlogic/amlogic-gxl-cipher.c | 441 ++++++++++++--------
> drivers/crypto/amlogic/amlogic-gxl-core.c | 1 +
> drivers/crypto/amlogic/amlogic-gxl.h | 2 +
> 3 files changed, 280 insertions(+), 164 deletions(-)
>

Hello

I have started to test by adding patch one by one and when testing this one I got:
[ 21.674995] gxl-crypto c883e000.crypto: will run requests pump with realtime priority
[ 21.679686] gxl-crypto c883e000.crypto: will run requests pump with realtime priority
[ 21.704366] ------------[ cut here ]------------
[ 21.704480] DMA-API: gxl-crypto c883e000.crypto: device driver tries to sync DMA memory it has not allocated [device address=0x000000000264c000] [size=48 bytes]
[ 21.717684] WARNING: CPU: 1 PID: 263 at kernel/dma/debug.c:1105 check_sync+0x1d0/0x688
[ 21.725512] Modules linked in: meson_rng meson_gxbb_wdt rng_core amlogic_gxl_crypto(+) meson_canvas libphy(+) watchdog ghash_generic gcm xctr xts cts essiv authenc cmac xcbc ccm
[ 21.741211] CPU: 1 PID: 263 Comm: c883e000.crypto Not tainted 6.8.0-rc1-00052-g595d4248b127 #24
[ 21.749834] Hardware name: Libre Computer AML-S905X-CC (DT)
[ 21.755353] pstate: 600000c5 (nZCv daIF -PAN -UAO -TCO -DIT -SSBS BTYPE=--)
[ 21.762252] pc : check_sync+0x1d0/0x688
[ 21.766047] lr : check_sync+0x1d0/0x688
[ 21.769842] sp : ffff8000820fbb40
[ 21.773119] x29: ffff8000820fbb40 x28: 0000000000000000 x27: 0000000000000000
[ 21.780192] x26: ffff800081d639d0 x25: 0000000000001327 x24: ffff00000288b010
[ 21.787265] x23: 0000000000000050 x22: 0000000000001327 x21: ffff800081c23a20
[ 21.794336] x20: ffff800080fe0bb8 x19: ffff8000820fbbc0 x18: 0000000000000006
[ 21.801410] x17: 645b206465746163 x16: 6f6c6c6120746f6e x15: ffff8000820fb540
[ 21.808482] x14: 000000000000000b x13: ffff800081002748 x12: 0000000000000249
[ 21.815554] x11: 00000000000000c3 x10: ffff80008105a748 x9 : ffff800081002748
[ 21.822626] x8 : 00000000ffffefff x7 : ffff80008105a748 x6 : 80000000fffff000
[ 21.829700] x5 : ffff00007d9abb08 x4 : 0000000000000000 x3 : 0000000000000027
[ 21.836772] x2 : 0000000000000000 x1 : 0000000000000000 x0 : ffff00000b314ec0
[ 21.843844] Call trace:
[ 21.846260] check_sync+0x1d0/0x688
[ 21.849710] debug_dma_sync_single_for_device+0xb8/0xc0
[ 21.854885] dma_sync_single_for_device+0xc0/0x11c
[ 21.859628] meson_handle_cipher_request+0x49c/0x7c4 [amlogic_gxl_crypto]
[ 21.866356] crypto_pump_work+0x160/0x2ac
[ 21.870324] kthread_worker_fn+0xe4/0x300
[ 21.874291] kthread+0x11c/0x120
[ 21.877483] ret_from_fork+0x10/0x20
[ 21.881020] irq event stamp: 9880
[ 21.884296] hardirqs last enabled at (9879): [<ffff800080988834>] _raw_spin_unlock_irqrestore+0x6c/0x70
[ 21.893698] hardirqs last disabled at (9880): [<ffff800080987ca0>] _raw_spin_lock_irqsave+0x84/0x88
[ 21.902668] softirqs last enabled at (5638): [<ffff800080010674>] __do_softirq+0x494/0x4dc
[ 21.910947] softirqs last disabled at (5627): [<ffff8000800161f0>] ____do_softirq+0x10/0x1c
[ 21.919227] ---[ end trace 0000000000000000 ]---

Regards