summaryrefslogtreecommitdiffstats
path: root/drivers/net/bna/bnad.h
diff options
context:
space:
mode:
authorEric Dumazet <eric.dumazet@gmail.com>2010-09-02 21:45:02 +0200
committerDavid S. Miller <davem@davemloft.net>2010-09-02 21:45:02 +0200
commit250e061e1d3e26600236a3dd9172e7f5f5916c00 (patch)
tree4f52da41f1b254538b75e4ba84a8e4f1c2a23b2b /drivers/net/bna/bnad.h
parentnet: arp: code cleanup (diff)
downloadlinux-250e061e1d3e26600236a3dd9172e7f5f5916c00.tar.xz
linux-250e061e1d3e26600236a3dd9172e7f5f5916c00.zip
bna: fix stats handling
get_stats() method incorrectly clears a global array before folding various stats. This can break SNMP applications. Switch to 64 bit flavor to work on a user supplied buffer, and provide 64bit counters even on 32bit arches. Fix a bug in bnad_netdev_hwstats_fill(), for rx_fifo_errors, missing a folding (only the last counter was taken into account) Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com> Acked-by: Rasesh Mody <rmody@brocade.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/bna/bnad.h')
-rw-r--r--drivers/net/bna/bnad.h5
1 files changed, 2 insertions, 3 deletions
diff --git a/drivers/net/bna/bnad.h b/drivers/net/bna/bnad.h
index 3261401e35cb..ee377888b905 100644
--- a/drivers/net/bna/bnad.h
+++ b/drivers/net/bna/bnad.h
@@ -273,7 +273,6 @@ struct bnad {
/* Statistics */
struct bnad_stats stats;
- struct net_device_stats net_stats;
struct bnad_diag *diag;
@@ -308,8 +307,8 @@ extern void bnad_cleanup_rx(struct bnad *bnad, uint rx_id);
extern void bnad_dim_timer_start(struct bnad *bnad);
/* Statistics */
-extern void bnad_netdev_qstats_fill(struct bnad *bnad);
-extern void bnad_netdev_hwstats_fill(struct bnad *bnad);
+extern void bnad_netdev_qstats_fill(struct bnad *bnad, struct rtnl_link_stats64 *stats);
+extern void bnad_netdev_hwstats_fill(struct bnad *bnad, struct rtnl_link_stats64 *stats);
/**
* MACROS