diff options
author | Simon Xiao <sixiao@microsoft.com> | 2017-01-24 13:06:13 -0800 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2017-01-24 16:29:01 -0500 |
commit | 6c80f3fc2398aef22798e8ac4258454b1062f3fb (patch) | |
tree | 1101688cc456925a87c943138f2521c29550820d /drivers/net/hyperv/netvsc.c | |
parent | 793e39555511bccd73308c41205b72448d0077db (diff) |
netvsc: report per-channel stats in ethtool statistics
Report packets and bytes transferred through a vmbus channel via ethtool.
This supersedes need for per-cpu statistics.
Example:
$ ethtool -S eth0
NIC statistics:
...
tx_queue_0_packets: 3523179
tx_queue_0_bytes: 505370920
rx_queue_0_packets: 41430490
rx_queue_0_bytes: 62714661254
tx_queue_1_packets: 0
tx_queue_1_bytes: 0
rx_queue_1_packets: 0
rx_queue_1_bytes: 0
...
Reviewed-by: Long Li <longli@microsoft.com>
Reviewed-by: K. Y. Srinivasan <kys@microsoft.com>
Reviewed-by: Haiyang Zhang <haiyangz@microsoft.com>
Signed-off-by: Simon Xiao <sixiao@microsoft.com>
Signed-off-by: Stephen Hemminger <sthemmin@microsoft.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/hyperv/netvsc.c')
-rw-r--r-- | drivers/net/hyperv/netvsc.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/hyperv/netvsc.c b/drivers/net/hyperv/netvsc.c index 397aa1d88a6f..c70c4ac77b74 100644 --- a/drivers/net/hyperv/netvsc.c +++ b/drivers/net/hyperv/netvsc.c @@ -621,7 +621,7 @@ static void netvsc_send_tx_complete(struct netvsc_device *net_device, q_idx = packet->q_idx; channel = incoming_channel; - tx_stats = this_cpu_ptr(net_device_ctx->tx_stats); + tx_stats = &net_device->chan_table[q_idx].tx_stats; u64_stats_update_begin(&tx_stats->syncp); tx_stats->packets += packet->total_packets; |