From: Pavan Nikhilesh <pbhagavat...@marvell.com> Reads to Tx queue FC memory need to be atomic to avoid cores using same Tx queue spinning on stale values.
Fixes: 313e884a22fd ("event/cnxk: support Tx adapter fast path") Signed-off-by: Pavan Nikhilesh <pbhagavat...@marvell.com> --- Please squash this into next-event tree drivers/event/cnxk/cn9k_worker.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/event/cnxk/cn9k_worker.h b/drivers/event/cnxk/cn9k_worker.h index cc1e141957..9b2a0bf882 100644 --- a/drivers/event/cnxk/cn9k_worker.h +++ b/drivers/event/cnxk/cn9k_worker.h @@ -420,7 +420,8 @@ NIX_RX_FASTPATH_MODES static __rte_always_inline void cn9k_sso_txq_fc_wait(const struct cn9k_eth_txq *txq) { - while (!(((txq)->nb_sqb_bufs_adj - *(txq)->fc_mem) + while (!((txq->nb_sqb_bufs_adj - + __atomic_load_n(txq->fc_mem, __ATOMIC_RELAXED)) << (txq)->sqes_per_sqb_log2)) ; } -- 2.17.1