ixgbe: Drop Rx alloc at end of Rx cleanup
authorAlexander Duyck <alexander.h.duyck@intel.com>
Sat, 26 Jul 2014 02:42:39 +0000 (02:42 +0000)
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>
Fri, 12 Sep 2014 07:30:13 +0000 (00:30 -0700)
This change removes the Rx buffer allocation at the end of ixgbe_clean_rx_irq.
The reason for removing this is to avoid the extra latency introduced by the
MMIO write.  This can amount to somewhere around an extra 100ns of latency and
one extra message worth of PCIe bus overhead.

Signed-off-by: Alexander Duyck <alexander.h.duyck@intel.com>
Tested-by: Phil Schmitt <phillip.j.schmitt@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
drivers/net/ethernet/intel/ixgbe/ixgbe_main.c

index 87613806ee880b66560a0b6279d61d652481f142..6a12bb1d49caf939de62acd49572e5312f68e793 100644 (file)
@@ -2077,9 +2077,6 @@ static int ixgbe_clean_rx_irq(struct ixgbe_q_vector *q_vector,
        q_vector->rx.total_packets += total_rx_packets;
        q_vector->rx.total_bytes += total_rx_bytes;
 
-       if (cleaned_count)
-               ixgbe_alloc_rx_buffers(rx_ring, cleaned_count);
-
        return total_rx_packets;
 }