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.rybalche...@intel.com for review

________________________________
From: Yong Liang <1269690...@qq.com>
Sent: 18 September 2024 15:15
To: dev@dpdk.org <dev@dpdk.org>
Cc: roy.fan.zh...@intel.com <roy.fan.zh...@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.zh...@intel.com

Signed-off-by: Yong Liang <1269690...@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

Reply via email to