linux/drivers/net/ixgbe
Eric Dumazet de1036b1ce ixgbe: fix stats handling
Current ixgbe stats have following problems :

- Not 64 bit safe (on 32bit arches)

- Not safe in ixgbe_clean_rx_irq() :
   All cpus dirty a common location (netdev->stats.rx_bytes &
netdev->stats.rx_packets) without proper synchronization.
   This slow down a bit multiqueue operations, and possibly miss some
updates.

Fixes :

Implement ndo_get_stats64() method to provide accurate 64bit rx|tx
bytes/packets counters, using 64bit safe infrastructure.

ixgbe_get_ethtool_stats() also use this infrastructure to provide 64bit
safe counters.

Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
Acked-by: Don Skidmore <donald.c.skidmore@intel.com>
Tested-by: Stephen Ko <stephen.s.ko@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2010-10-21 03:55:22 -07:00
..
Makefile Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2010-01-23 00:31:06 -08:00
ixgbe.h ixgbe: fix stats handling 2010-10-21 03:55:22 -07:00
ixgbe_82598.c ixgbe:add support for a new 82599 10G Base-T device 2010-05-20 23:07:06 -07:00
ixgbe_82599.c ixgbe: declare functions as static 2010-10-14 10:49:43 -07:00
ixgbe_common.c ixgbe: declare functions as static 2010-10-14 10:49:43 -07:00
ixgbe_common.h ixgbe: declare functions as static 2010-10-14 10:49:43 -07:00
ixgbe_dcb.c ixgbe: remove unused functions 2010-10-14 10:49:42 -07:00
ixgbe_dcb.h ixgbe: remove unused functions 2010-10-14 10:49:42 -07:00
ixgbe_dcb_82598.c ixgbe: declare functions as static 2010-10-14 10:49:43 -07:00
ixgbe_dcb_82598.h ixgbe: declare functions as static 2010-10-14 10:49:43 -07:00
ixgbe_dcb_82599.c ixgbe: declare functions as static 2010-10-14 10:49:43 -07:00
ixgbe_dcb_82599.h ixgbe: declare functions as static 2010-10-14 10:49:43 -07:00
ixgbe_dcb_nl.c ixgbe: use netif_<level> instead of netdev_<level> 2010-07-05 18:50:55 -07:00
ixgbe_ethtool.c ixgbe: fix stats handling 2010-10-21 03:55:22 -07:00
ixgbe_fcoe.c drivers/net: avoid some skb->ip_summed initializations 2010-09-02 19:06:22 -07:00
ixgbe_fcoe.h ixgbe: update copyright dates 2010-01-13 17:12:45 -08:00
ixgbe_main.c ixgbe: fix stats handling 2010-10-21 03:55:22 -07:00
ixgbe_mbx.c ixgbe: update copyright info 2010-10-21 03:55:21 -07:00
ixgbe_mbx.h ixgbe: update copyright info 2010-10-21 03:55:21 -07:00
ixgbe_phy.c ixgbe: add 1g PHY support for 82599 2010-06-30 14:27:40 -07:00
ixgbe_phy.h ixgbe: add 1g PHY support for 82599 2010-06-30 14:27:40 -07:00
ixgbe_sriov.c ixgbe: update copyright info 2010-10-21 03:55:21 -07:00
ixgbe_sriov.h ixgbe: update copyright info 2010-10-21 03:55:21 -07:00
ixgbe_type.h ixgbe: move all Rx DMA control register writes to one central location 2010-08-19 16:44:24 -07:00