forcedeth: fix stats on hardware without extended stats support
authordavid decotigny <david.decotigny@google.com>
Fri, 11 Nov 2011 16:27:34 +0000 (16:27 +0000)
committerDavid S. Miller <davem@davemloft.net>
Mon, 14 Nov 2011 05:14:39 +0000 (00:14 -0500)
commit898bdf2cb43eb0a962c397eb4dd1aec2c7211be2
tree6a203f978aa250a541f6ac404e25a8ab599b9d77
parent77c1c7c4bd4751dbf47cdacd0e73e67f0a1ed316
forcedeth: fix stats on hardware without extended stats support

This change makes sure that tx_packets/rx_bytes ifconfig counters are
updated even on NICs that don't provide hardware support for these
stats: they are now updated in software. For the sake of consistency,
we also now have tx_bytes updated in software (hardware counters
include ethernet CRC, and software doesn't account for it).

This reverts parts of:
 - "forcedeth: statistics optimization" (21828163b2)
 - "forcedeth: Improve stats counters" (0bdfea8ba8)
 - "forcedeth: remove unneeded stats updates" (4687f3f364)

Tested:
  pktgen + loopback (http://patchwork.ozlabs.org/patch/124698/)
  reports identical tx_packets/rx_packets and tx_bytes/rx_bytes.

Signed-off-by: David Decotigny <david.decotigny@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/nvidia/forcedeth.c