net/ena: remove memory barriers before doorbells
authorMichal Krawczyk <mk@semihalf.com>
Wed, 8 Apr 2020 08:29:11 +0000 (10:29 +0200)
committerFerruh Yigit <ferruh.yigit@intel.com>
Tue, 21 Apr 2020 11:57:07 +0000 (13:57 +0200)
The doorbell code is already issuing the doorbell by using rte_write.
Because of that, there is no need to do that before calling the
function.

Signed-off-by: Michal Krawczyk <mk@semihalf.com>
Reviewed-by: Igor Chauskin <igorch@amazon.com>
Reviewed-by: Guy Tzalik <gtzalik@amazon.com>
drivers/net/ena/ena_ethdev.c

index fdcbe53..07feb62 100644 (file)
@@ -1462,12 +1462,7 @@ static int ena_populate_rx_queue(struct ena_ring *rxq, unsigned int count)
 
        /* When we submitted free recources to device... */
        if (likely(i > 0)) {
-               /* ...let HW know that it can fill buffers with data
-                *
-                * Add memory barrier to make sure the desc were written before
-                * issue a doorbell
-                */
-               rte_wmb();
+               /* ...let HW know that it can fill buffers with data. */
                ena_com_write_sq_doorbell(rxq->ena_com_io_sq);
 
                rxq->next_to_use = next_to_use;
@@ -2405,7 +2400,6 @@ static uint16_t eth_ena_xmit_pkts(void *tx_queue, struct rte_mbuf **tx_pkts,
                        PMD_DRV_LOG(DEBUG, "llq tx max burst size of queue %d"
                                " achieved, writing doorbell to send burst\n",
                                tx_ring->id);
-                       rte_wmb();
                        ena_com_write_sq_doorbell(tx_ring->ena_com_io_sq);
                }
 
@@ -2428,7 +2422,6 @@ static uint16_t eth_ena_xmit_pkts(void *tx_queue, struct rte_mbuf **tx_pkts,
        /* If there are ready packets to be xmitted... */
        if (sent_idx > 0) {
                /* ...let HW do its best :-) */
-               rte_wmb();
                ena_com_write_sq_doorbell(tx_ring->ena_com_io_sq);
                tx_ring->tx_stats.doorbells++;
                tx_ring->next_to_use = next_to_use;