On Mon, Nov 13, 2023 at 11:01 AM Srikanth Yalavarthi <syalavar...@marvell.com> wrote: > > Segfaults are reported with TVM/LLVM models as NULL value > is read by dequeue thread for the op handle. This is due > synchronization issue between enqueue and dequeue threads. > > This fix ensures the op handle written to internal request > structure is committed before the dequeue threads read the > handle value. > > Fixes: 88001b4d88de ("ml/cnxk: update fast path functions") > > Signed-off-by: Srikanth Yalavarthi <syalavar...@marvell.com>
Applied to dpdk-next-net-mrvl/for-next-net. Thanks > --- > drivers/ml/cnxk/cnxk_ml_ops.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/drivers/ml/cnxk/cnxk_ml_ops.c b/drivers/ml/cnxk/cnxk_ml_ops.c > index 81866ceaa6..971362b242 100644 > --- a/drivers/ml/cnxk/cnxk_ml_ops.c > +++ b/drivers/ml/cnxk/cnxk_ml_ops.c > @@ -1596,6 +1596,7 @@ cnxk_ml_enqueue_burst(struct rte_ml_dev *dev, uint16_t > qp_id, struct rte_ml_op * > jcmdq_full: > queue->head = head; > qp->stats.enqueued_count += count; > + rte_wmb(); > > return count; > } > -- > 2.42.0 >