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 <dev@dpdk.org>
Cc: roy.fan.zhang@intel.com <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