diff options
author | Eric Dumazet <eric.dumazet@gmail.com> | 2010-09-02 12:45:02 -0700 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2010-09-02 12:45:02 -0700 |
commit | 250e061e1d3e26600236a3dd9172e7f5f5916c00 (patch) | |
tree | 4f52da41f1b254538b75e4ba84a8e4f1c2a23b2b /drivers/net/bna/bnad.h | |
parent | deffd77759e3ceb936f0760cc54a213881577a83 (diff) | |
download | op-kernel-dev-250e061e1d3e26600236a3dd9172e7f5f5916c00.zip op-kernel-dev-250e061e1d3e26600236a3dd9172e7f5f5916c00.tar.gz |
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.h | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/drivers/net/bna/bnad.h b/drivers/net/bna/bnad.h index 3261401..ee37788 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 |