summary refs log tree commit diff
path: root/drivers/parisc
diff options
context:
space:
mode:
authorRusty Russell <rusty@rustcorp.com.au>2007-03-28 14:29:08 -0700
committerDavid S. Miller <davem@sunset.davemloft.net>2007-04-25 22:28:26 -0700
commitc45d286e72dd72c0229dc9e2849743ba427fee84 (patch)
tree1fb22a5e71c89043671380087def5bc419a37886 /drivers/parisc
parentf85958151900f9d30fa5ff941b0ce71eaa45a7de (diff)
downloadlinux-c45d286e72dd72c0229dc9e2849743ba427fee84.tar.gz
[NET]: Inline net_device_stats
Network drivers which keep stats allocate their own stats structure
then write a get_stats() function to return them.  It would be nice if
this were done by default.

1) Add a new "stats" field to "struct net_device".
2) Add a new feature field to say "this driver uses the internal one"
3) Have a default "get_stats" which returns NULL if that feature not set.
4) Change callers to check result of get_stats call for NULL, not if
   ->get_stats is set.

This should not break backwards compatibility with older drivers, yet
allow modern drivers to shed some boilerplate code.

Lightly tested: works for a modified lguest network driver.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/parisc')
-rw-r--r--drivers/parisc/led.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/parisc/led.c b/drivers/parisc/led.c
index d190c05d87ed..453e6829756c 100644
--- a/drivers/parisc/led.c
+++ b/drivers/parisc/led.c
@@ -372,9 +372,9 @@ static __inline__ int led_get_net_activity(void)
 		continue;
 	    if (LOOPBACK(in_dev->ifa_list->ifa_local))
 		continue;
-	    if (!dev->get_stats) 
-		continue;
 	    stats = dev->get_stats(dev);
+	    if (!stats)
+		continue;
 	    rx_total += stats->rx_packets;
 	    tx_total += stats->tx_packets;
 	}