diff options
| author | 2017-01-24 13:06:13 -0800 | |
|---|---|---|
| committer | 2017-01-24 16:29:01 -0500 | |
| commit | 6c80f3fc2398aef22798e8ac4258454b1062f3fb (patch) | |
| tree | 1101688cc456925a87c943138f2521c29550820d /drivers/net/hyperv/hyperv_net.h | |
| parent | netvsc: account for packets/bytes transmitted after completion (diff) | |
| download | linux-dev-6c80f3fc2398aef22798e8ac4258454b1062f3fb.tar.xz linux-dev-6c80f3fc2398aef22798e8ac4258454b1062f3fb.zip | |
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 */ |
