[PATCH net-next v4 00/10] net-sysfs+forcedeth: stats & debug enhancements

From: David Decotigny
Date: Wed Nov 16 2011 - 00:14:14 EST


These changes provide a new tx_timeout sysfs attribute and implement
the ndo_get_stats64 API. They also add a few more stats and debugging
features for forcedeth. They ensure that stats updates are correct in
SMP systems, 32 or 64-bits.

Note: patch 1 is the cherry-pick of 898bdf2cb43e ("forcedeth: fix
stats on hardware without extended stats support")

Changes since v4:
- tx_timeout counter now a generic sysfs attribute. Credits to
Stephen Hemminger for initial implementation
- revert get_stats64 to using atomic variables: see
http://patchwork.ozlabs.org/patch/125861/ for motivations
- dropped patch "expose module parameters in /sys/module" for now: I
will work on this later, following Stephen's recommendations
(http://patchwork.ozlabs.org/patch/125862/).

Changes since v3:
- updated get_stats64 + rx_dropped patches to use u64_stats_sync.h
- dropped indentation "whitespace/indentation fixes" (included in
get_stats64 api patch)

Changes since v2:
- patch 1/9 is the cherry-pick of 898bdf2cb43e ("forcedeth: fix
stats on hardware without extended stats support")
- removed patch 5/10 "stats for rx_packets based on hardware
registers" because packets&bytes stats are updated in software
only (898bdf2cb43e)

Changes since v1:
- patch 1/10 is the same as
http://patchwork.ozlabs.org/patch/125017/ (targetting net)
- other patches updated to take patch 1/10 into account
- various commit message updates


Tested:
~150Mbps incoming TCP, ethtool -S in a loop, x86_64 16-way:
tx_bytes: 5441989419
rx_packets: 5439224
tx_timeout: 0
tx_packets: 5456705
rx_bytes: 5566763850

Tested:
pktgen + loopback report same RX/TX packets and bytes stats

Tested:
tests above with Kconfig DEBUG_PAGEALLOC DEBUG_MUTEXES
DEBUG_SPINLOCK LOCKUP_DETECTOR DEBUG_RT_MUTEXES DEBUG_LOCK_ALLOC
PROVE_LOCKING DEBUG_ATOMIC_SLEEP DEBUG_STACK_USAGE DEBUG_KOBJECT
DEBUG_VM DEBUG_LIST DEBUG_SG DEBUG_NOTIFIERS TEST_KSTRTOX
STRICT_DEVMEM DEBUG_STACKOVERFLOW


############################################
# Patch Set Summary:

David Decotigny (7):
net-sysfs: fixed minor sparse warning
kbuild: document RPS/XPS network Kconfig options
net: provide counter for tx_timeout errors in sysfs
forcedeth: implement ndo_get_stats64() API
forcedeth: account for dropped RX frames
forcedeth: stats updated with a deferrable timer
forcedeth: whitespace/indentation fixes

Mike Ditto (1):
forcedeth: Add messages to indicate using MSI or MSI-X

Sameer Nanda (1):
forcedeth: allow to silence "TX timeout" debug messages

david decotigny (1):
forcedeth: fix stats on hardware without extended stats support

drivers/net/ethernet/nvidia/forcedeth.c | 320 ++++++++++++++++++++++---------
include/linux/netdevice.h | 12 +-
net/Kconfig | 16 ++-
net/core/net-sysfs.c | 49 ++++--
net/sched/sch_generic.c | 1 +
5 files changed, 293 insertions(+), 105 deletions(-)

--
1.7.3.1

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/