Commit d63951d7 authored by David Vrabel's avatar David Vrabel Committed by David S. Miller

xen-netback: return correct ethtool stats

Use correct pointer arithmetic to get the pointer to each stat.
Signed-off-by: default avatarDavid Vrabel <david.vrabel@citrix.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 04b91701
...@@ -340,12 +340,11 @@ static void xenvif_get_ethtool_stats(struct net_device *dev, ...@@ -340,12 +340,11 @@ static void xenvif_get_ethtool_stats(struct net_device *dev,
unsigned int num_queues = vif->num_queues; unsigned int num_queues = vif->num_queues;
int i; int i;
unsigned int queue_index; unsigned int queue_index;
struct xenvif_stats *vif_stats;
for (i = 0; i < ARRAY_SIZE(xenvif_stats); i++) { for (i = 0; i < ARRAY_SIZE(xenvif_stats); i++) {
unsigned long accum = 0; unsigned long accum = 0;
for (queue_index = 0; queue_index < num_queues; ++queue_index) { for (queue_index = 0; queue_index < num_queues; ++queue_index) {
vif_stats = &vif->queues[queue_index].stats; void *vif_stats = &vif->queues[queue_index].stats;
accum += *(unsigned long *)(vif_stats + xenvif_stats[i].offset); accum += *(unsigned long *)(vif_stats + xenvif_stats[i].offset);
} }
data[i] = accum; data[i] = accum;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment