Selaa lähdekoodia

igb: remove rx checksum good counter

Counting packets with a good checksum can cause a significant amount of cache
line bouncing due to the shared counter being written to by all of the queues.
In order to avoid this I am removing the counter since we still have the
checksum failed counter which will tell us if there are any issues.

Signed-off-by: Alexander Duyck <alexander.h.duyck@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Alexander Duyck 15 vuotta sitten
vanhempi
commit
094919a4b0
3 muutettua tiedostoa jossa 0 lisäystä ja 3 poistoa
  1. 0 1
      drivers/net/igb/igb.h
  2. 0 1
      drivers/net/igb/igb_ethtool.c
  3. 0 1
      drivers/net/igb/igb_main.c

+ 0 - 1
drivers/net/igb/igb.h

@@ -254,7 +254,6 @@ struct igb_adapter {
 	int num_rx_queues;
 
 	u64 hw_csum_err;
-	u64 hw_csum_good;
 	u32 alloc_rx_buff_failed;
 	u32 gorc;
 	u64 gorc_old;

+ 0 - 1
drivers/net/igb/igb_ethtool.c

@@ -95,7 +95,6 @@ static const struct igb_stats igb_gstrings_stats[] = {
 	{ "tx_flow_control_xon", IGB_STAT(stats.xontxc) },
 	{ "tx_flow_control_xoff", IGB_STAT(stats.xofftxc) },
 	{ "rx_long_byte_count", IGB_STAT(stats.gorc) },
-	{ "rx_csum_offload_good", IGB_STAT(hw_csum_good) },
 	{ "rx_csum_offload_errors", IGB_STAT(hw_csum_err) },
 	{ "tx_dma_out_of_sync", IGB_STAT(stats.doosync) },
 	{ "alloc_rx_buff_failed", IGB_STAT(alloc_rx_buff_failed) },

+ 0 - 1
drivers/net/igb/igb_main.c

@@ -4827,7 +4827,6 @@ static inline void igb_rx_checksum_adv(struct igb_adapter *adapter,
 		skb->ip_summed = CHECKSUM_UNNECESSARY;
 
 	dev_dbg(&adapter->pdev->dev, "cksum success: bits %08X\n", status_err);
-	adapter->hw_csum_good++;
 }
 
 static inline u16 igb_get_hlen(struct igb_adapter *adapter,