I'm not see any issue with original code, can you give more details about crash so I can try to reproduce at my end. cc kirill.rybalchenko@intel.com for review ________________________________ From: Yong Liang <1269690261@qq.com> Sent: 18 September 2024 15:15 To: dev@dpdk.org Cc: roy.fan.zhang@intel.com Subject: [PATCH] crypto/scheduler: fix incorrect variable usage The variable `pending_deq_ops` was incorrectly used instead of `pending_enq_ops`. This causes the program to crash when the worker PMD accesses the session Bugzilla ID: 1537 Fixes: 6812b9bf470e ("crypto/scheduler: use unified session") Cc: roy.fan.zhang@intel.com Signed-off-by: Yong Liang <1269690261@qq.com> --- drivers/crypto/scheduler/scheduler_multicore.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/crypto/scheduler/scheduler_multicore.c b/drivers/crypto/scheduler/scheduler_multicore.c index a21b522f9f..70f8a25b70 100644 --- a/drivers/crypto/scheduler/scheduler_multicore.c +++ b/drivers/crypto/scheduler/scheduler_multicore.c @@ -191,11 +191,11 @@ mc_scheduler_worker(struct rte_cryptodev *dev) worker->qp_id, &enq_ops[pending_enq_ops_idx], pending_enq_ops); - if (processed_ops < pending_deq_ops) + if (processed_ops < pending_enq_ops) scheduler_retrieve_sessions( &enq_ops[pending_enq_ops_idx + processed_ops], - pending_deq_ops - processed_ops); + pending_enq_ops - processed_ops); pending_enq_ops -= processed_ops; pending_enq_ops_idx += processed_ops; inflight_ops += processed_ops; -- 2.43.0