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/hyperv_net.h | |
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/hyperv_net.h')
-rw-r--r-- | drivers/net/hyperv/hyperv_net.h | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/net/hyperv/hyperv_net.h b/drivers/net/hyperv/hyperv_net.h index 340f64233e2a..d3e73ac158ae 100644 --- a/drivers/net/hyperv/hyperv_net.h +++ b/drivers/net/hyperv/hyperv_net.h @@ -699,8 +699,6 @@ struct net_device_context { u32 msg_enable; /* debug level */ u32 tx_checksum_mask; - struct netvsc_stats __percpu *tx_stats; - struct netvsc_stats __percpu *rx_stats; /* Ethtool settings */ u8 duplex; @@ -725,6 +723,9 @@ struct netvsc_channel { struct multi_send_data msd; struct multi_recv_comp mrc; atomic_t queue_sends; + + struct netvsc_stats tx_stats; + struct netvsc_stats rx_stats; }; /* Per netvsc device */ |