net/qede: prefetch hardware consumer
authorBalazs Nemeth <bnemeth@redhat.com>
Fri, 26 Mar 2021 11:01:28 +0000 (12:01 +0100)
committerJerin Jacob <jerinj@marvell.com>
Sat, 27 Mar 2021 14:00:45 +0000 (15:00 +0100)
Ensure that, while ecore_chain_get_cons_idx is running, txq->hw_cons_ptr
is prefetched. This shows a slight performance improvement.

Signed-off-by: Balazs Nemeth <bnemeth@redhat.com>
Reviewed-by: Igor Russkikh <irusskikh@marvell.com>
drivers/net/qede/qede_rxtx.c

index f439ee0..4f58abf 100644 (file)
@@ -896,6 +896,7 @@ qede_process_tx_compl(__rte_unused struct ecore_dev *edev,
        uint16_t first_idx;
 
        rte_compiler_barrier();
+       rte_prefetch0(txq->hw_cons_ptr);
        sw_tx_cons = ecore_chain_get_cons_idx(&txq->tx_pbl);
        hw_bd_cons = rte_le_to_cpu_16(*txq->hw_cons_ptr);
 #ifdef RTE_LIBRTE_QEDE_DEBUG_TX