search for: rx_packet

Displaying 20 results from an estimated 97 matches for "rx_packet".

Did you mean: rx_packets
2013 May 16
2
[PATCH] virtio-net: Reporting traffic queue distribution statistics through ethtool
...es through ethtool -S. The per_cpu virtnet_stats is split into receive and transmit stats and are maintained on a per receive_queue and send_queue basis. virtnet_stats() is modified to aggregate interface level statistics from per-queue statistics. Sample output below: NIC statistics: rxq0: rx_packets: 4357802 rxq0: rx_bytes: 292642052 txq0: tx_packets: 824540 txq0: tx_bytes: 55256404 rxq1: rx_packets: 0 rxq1: rx_bytes: 0 txq1: tx_packets: 1094268 txq1: tx_bytes: 73328316 rxq2: rx_packets: 0 rxq2: rx_bytes: 0 txq2: tx_packets: 1091466 txq2:...
2013 May 16
2
[PATCH] virtio-net: Reporting traffic queue distribution statistics through ethtool
...es through ethtool -S. The per_cpu virtnet_stats is split into receive and transmit stats and are maintained on a per receive_queue and send_queue basis. virtnet_stats() is modified to aggregate interface level statistics from per-queue statistics. Sample output below: NIC statistics: rxq0: rx_packets: 4357802 rxq0: rx_bytes: 292642052 txq0: tx_packets: 824540 txq0: tx_bytes: 55256404 rxq1: rx_packets: 0 rxq1: rx_bytes: 0 txq1: tx_packets: 1094268 txq1: tx_bytes: 73328316 rxq2: rx_packets: 0 rxq2: rx_bytes: 0 txq2: tx_packets: 1091466 txq2:...
2017 Dec 20
4
[PATCH net-next] virtio_net: Add ethtool stats
The main purpose of this patch is adding a way of checking per-queue stats. It's useful to debug performance problems on multiqueue environment. $ ethtool -S ens10 NIC statistics: rx_packets: 4172939 tx_packets: 5855538 rx_bytes: 6317757408 tx_bytes: 8865151846 rx_dropped: 0 rx_length_errors: 0 rx_frame_errors: 0 tx_dropped: 0 tx_fifo_errors: 0 rx_queue_0_packets: 2090408 rx_queue_0_bytes: 3164825094 rx_queue_1_packets: 2082531...
2017 Dec 20
4
[PATCH net-next] virtio_net: Add ethtool stats
The main purpose of this patch is adding a way of checking per-queue stats. It's useful to debug performance problems on multiqueue environment. $ ethtool -S ens10 NIC statistics: rx_packets: 4172939 tx_packets: 5855538 rx_bytes: 6317757408 tx_bytes: 8865151846 rx_dropped: 0 rx_length_errors: 0 rx_frame_errors: 0 tx_dropped: 0 tx_fifo_errors: 0 rx_queue_0_packets: 2090408 rx_queue_0_bytes: 3164825094 rx_queue_1_packets: 2082531...
2017 Dec 25
2
[PATCH net-next] virtio_net: Add ethtool stats
On 2017/12/25 3:16, Stephen Hemminger wrote: > On Wed, 20 Dec 2017 13:40:37 +0900 > Toshiaki Makita <makita.toshiaki at lab.ntt.co.jp> wrote: > >> + >> +static const struct virtnet_gstats virtnet_gstrings_stats[] = { >> + { "rx_packets", VIRTNET_NETDEV_STAT(rx_packets) }, >> + { "tx_packets", VIRTNET_NETDEV_STAT(tx_packets) }, >> + { "rx_bytes", VIRTNET_NETDEV_STAT(rx_bytes) }, >> + { "tx_bytes", VIRTNET_NETDEV_STAT(tx_bytes) }, >> + { "rx_dropped", VIRTNE...
2012 Jun 05
1
[net-next RFC PATCH] virtio_net: collect satistics and export through ethtool
...ckets queued for tx As virtnet_stats were per-cpu, so both per-cpu and gloabl satistics were exposed like: NIC statistics: tx_bytes[0]: 2551 tx_packets[0]: 12 tx_kick[0]: 12 tx_callbacks[0]: 1 tx_queued_packets[0]: 12 tx_queued_bytes[0]: 3055 rx_bytes[0]: 0 rx_packets[0]: 0 rx_kick[0]: 0 rx_callbacks[0]: 0 tx_bytes[1]: 5575 tx_packets[1]: 37 tx_kick[1]: 38 tx_callbacks[1]: 0 tx_queued_packets[1]: 38 tx_queued_bytes[1]: 5217 rx_bytes[1]: 4175 rx_packets[1]: 25 rx_kick[1]: 1 rx_callbacks[1]: 16 tx_b...
2012 Jun 05
1
[net-next RFC PATCH] virtio_net: collect satistics and export through ethtool
...ckets queued for tx As virtnet_stats were per-cpu, so both per-cpu and gloabl satistics were exposed like: NIC statistics: tx_bytes[0]: 2551 tx_packets[0]: 12 tx_kick[0]: 12 tx_callbacks[0]: 1 tx_queued_packets[0]: 12 tx_queued_bytes[0]: 3055 rx_bytes[0]: 0 rx_packets[0]: 0 rx_kick[0]: 0 rx_callbacks[0]: 0 tx_bytes[1]: 5575 tx_packets[1]: 37 tx_kick[1]: 38 tx_callbacks[1]: 0 tx_queued_packets[1]: 38 tx_queued_bytes[1]: 5217 rx_bytes[1]: 4175 rx_packets[1]: 25 rx_kick[1]: 1 rx_callbacks[1]: 16 tx_b...
2017 Dec 25
2
[PATCH net-next] virtio_net: Add ethtool stats
On 2017/12/25 3:16, Stephen Hemminger wrote: > On Wed, 20 Dec 2017 13:40:37 +0900 > Toshiaki Makita <makita.toshiaki at lab.ntt.co.jp> wrote: > >> + >> +static const struct virtnet_gstats virtnet_gstrings_stats[] = { >> + { "rx_packets", VIRTNET_NETDEV_STAT(rx_packets) }, >> + { "tx_packets", VIRTNET_NETDEV_STAT(tx_packets) }, >> + { "rx_bytes", VIRTNET_NETDEV_STAT(rx_bytes) }, >> + { "tx_bytes", VIRTNET_NETDEV_STAT(tx_bytes) }, >> + { "rx_dropped", VIRTNE...
2012 Jun 06
2
[V2 RFC net-next PATCH 1/2] virtio_net: convert the statistics into array
...drivers/net/virtio_net.c +++ b/drivers/net/virtio_net.c @@ -41,13 +41,17 @@ module_param(gso, bool, 0444); #define VIRTNET_SEND_COMMAND_SG_MAX 2 #define VIRTNET_DRIVER_VERSION "1.0.0" +enum virtnet_stats_type { + VIRTNET_TX_BYTES, + VIRTNET_TX_PACKETS, + VIRTNET_RX_BYTES, + VIRTNET_RX_PACKETS, + VIRTNET_NUM_STATS, +}; + struct virtnet_stats { struct u64_stats_sync syncp; - u64 tx_bytes; - u64 tx_packets; - - u64 rx_bytes; - u64 rx_packets; + u64 data[VIRTNET_NUM_STATS]; }; struct virtnet_info { @@ -301,8 +305,8 @@ static void receive_buf(struct net_device *dev, void *buf, unsign...
2012 Jun 06
2
[V2 RFC net-next PATCH 1/2] virtio_net: convert the statistics into array
...drivers/net/virtio_net.c +++ b/drivers/net/virtio_net.c @@ -41,13 +41,17 @@ module_param(gso, bool, 0444); #define VIRTNET_SEND_COMMAND_SG_MAX 2 #define VIRTNET_DRIVER_VERSION "1.0.0" +enum virtnet_stats_type { + VIRTNET_TX_BYTES, + VIRTNET_TX_PACKETS, + VIRTNET_RX_BYTES, + VIRTNET_RX_PACKETS, + VIRTNET_NUM_STATS, +}; + struct virtnet_stats { struct u64_stats_sync syncp; - u64 tx_bytes; - u64 tx_packets; - - u64 rx_bytes; - u64 rx_packets; + u64 data[VIRTNET_NUM_STATS]; }; struct virtnet_info { @@ -301,8 +305,8 @@ static void receive_buf(struct net_device *dev, void *buf, unsign...
2017 Dec 19
5
[RFC PATCH] virtio_net: Extend virtio to use VF datapath when available
...pi_tx, bool, 0644); */ DECLARE_EWMA(pkt_len, 0, 64) +#define VF_TAKEOVER_INT (HZ / 10) + #define VIRTNET_DRIVER_VERSION "1.0.0" static const unsigned long guest_offloads[] = { @@ -117,6 +121,15 @@ struct receive_queue { char name[40]; }; +struct virtnet_vf_pcpu_stats { + u64 rx_packets; + u64 rx_bytes; + u64 tx_packets; + u64 tx_bytes; + struct u64_stats_sync syncp; + u32 tx_dropped; +}; + struct virtnet_info { struct virtio_device *vdev; struct virtqueue *cvq; @@ -179,6 +192,11 @@ struct virtnet_info { u32 speed; unsigned long guest_offloads; + + /* State to manage...
2017 Dec 19
5
[RFC PATCH] virtio_net: Extend virtio to use VF datapath when available
...pi_tx, bool, 0644); */ DECLARE_EWMA(pkt_len, 0, 64) +#define VF_TAKEOVER_INT (HZ / 10) + #define VIRTNET_DRIVER_VERSION "1.0.0" static const unsigned long guest_offloads[] = { @@ -117,6 +121,15 @@ struct receive_queue { char name[40]; }; +struct virtnet_vf_pcpu_stats { + u64 rx_packets; + u64 rx_bytes; + u64 tx_packets; + u64 tx_bytes; + struct u64_stats_sync syncp; + u32 tx_dropped; +}; + struct virtnet_info { struct virtio_device *vdev; struct virtqueue *cvq; @@ -179,6 +192,11 @@ struct virtnet_info { u32 speed; unsigned long guest_offloads; + + /* State to manage...
2018 Jan 12
0
[RFC PATCH net-next v2 2/2] virtio_net: Extend virtio to use VF datapath when available
...nux/average.h> #include <linux/filter.h> +#include <linux/netdevice.h> +#include <linux/netpoll.h> #include <net/route.h> #include <net/xdp.h> @@ -120,6 +122,15 @@ struct receive_queue { struct xdp_rxq_info xdp_rxq; }; +struct virtnet_vf_pcpu_stats { + u64 rx_packets; + u64 rx_bytes; + u64 tx_packets; + u64 tx_bytes; + struct u64_stats_sync syncp; + u32 tx_dropped; +}; + struct virtnet_info { struct virtio_device *vdev; struct virtqueue *cvq; @@ -182,6 +193,10 @@ struct virtnet_info { u32 speed; unsigned long guest_offloads; + + /* State to manage...
2011 Jun 15
3
[PATCH] virtio-net: per cpu 64 bit stats
...5:18:46.448596355 -0400 +++ b/drivers/net/virtio_net.c 2011-06-15 09:54:22.914426067 -0400 @@ -40,6 +40,15 @@ module_param(gso, bool, 0444); #define VIRTNET_SEND_COMMAND_SG_MAX 2 +struct virtnet_stats { + struct u64_stats_sync syncp; + u64 tx_bytes; + u64 tx_packets; + + u64 rx_bytes; + u64 rx_packets; +}; + struct virtnet_info { struct virtio_device *vdev; struct virtqueue *rvq, *svq, *cvq; @@ -56,6 +65,9 @@ struct virtnet_info { /* Host will merge rx buffers for big packets (shake it! shake it!) */ bool mergeable_rx_bufs; + /* Active statistics */ + struct virtnet_stats __percpu *s...
2011 Jun 15
3
[PATCH] virtio-net: per cpu 64 bit stats
...5:18:46.448596355 -0400 +++ b/drivers/net/virtio_net.c 2011-06-15 09:54:22.914426067 -0400 @@ -40,6 +40,15 @@ module_param(gso, bool, 0444); #define VIRTNET_SEND_COMMAND_SG_MAX 2 +struct virtnet_stats { + struct u64_stats_sync syncp; + u64 tx_bytes; + u64 tx_packets; + + u64 rx_bytes; + u64 rx_packets; +}; + struct virtnet_info { struct virtio_device *vdev; struct virtqueue *rvq, *svq, *cvq; @@ -56,6 +65,9 @@ struct virtnet_info { /* Host will merge rx buffers for big packets (shake it! shake it!) */ bool mergeable_rx_bufs; + /* Active statistics */ + struct virtnet_stats __percpu *s...
2017 Dec 21
0
[RFC PATCH] virtio_net: Extend virtio to use VF datapath when available
...> +#define VF_TAKEOVER_INT (HZ / 10) > + > #define VIRTNET_DRIVER_VERSION "1.0.0" > > static const unsigned long guest_offloads[] = { > @@ -117,6 +121,15 @@ struct receive_queue { > char name[40]; > }; > > +struct virtnet_vf_pcpu_stats { > + u64 rx_packets; > + u64 rx_bytes; > + u64 tx_packets; > + u64 tx_bytes; > + struct u64_stats_sync syncp; > + u32 tx_dropped; > +}; > + > struct virtnet_info { > struct virtio_device *vdev; > struct virtqueue *cvq; > @@ -179,6 +192,11 @@ struct virtnet_info { > u32 spe...
2018 Jan 12
7
[RFC PATCH net-next v2 0/2] Enable virtio to act as a backup for a passthru device
This patch series extends virtio_net to take over VF datapath by simulating a transparent bond without creating any additional netdev. I understand that there are some comments suggesting an alternate model that is based on 3 driver model(virtio_net, VF driver, a new driver virt_bond that acts as a master to virtio_net and VF). Would like to get some feedback on the right way to solve the live
2012 Jun 06
9
[PATCH] virtio-net: fix a race on 32bit arches
...; u64 tx_packets; @@ -300,10 +301,10 @@ static void receive_buf(struct net_device *dev, void *buf, unsigned int len) hdr = skb_vnet_hdr(skb); - u64_stats_update_begin(&stats->syncp); + u64_stats_update_begin(&stats->rx_syncp); stats->rx_bytes += skb->len; stats->rx_packets++; - u64_stats_update_end(&stats->syncp); + u64_stats_update_end(&stats->rx_syncp); if (hdr->hdr.flags & VIRTIO_NET_HDR_F_NEEDS_CSUM) { pr_debug("Needs csum!\n"); @@ -565,10 +566,10 @@ static unsigned int free_old_xmit_skbs(struct virtnet_info *vi) while ((s...
2012 Jun 06
9
[PATCH] virtio-net: fix a race on 32bit arches
...; u64 tx_packets; @@ -300,10 +301,10 @@ static void receive_buf(struct net_device *dev, void *buf, unsigned int len) hdr = skb_vnet_hdr(skb); - u64_stats_update_begin(&stats->syncp); + u64_stats_update_begin(&stats->rx_syncp); stats->rx_bytes += skb->len; stats->rx_packets++; - u64_stats_update_end(&stats->syncp); + u64_stats_update_end(&stats->rx_syncp); if (hdr->hdr.flags & VIRTIO_NET_HDR_F_NEEDS_CSUM) { pr_debug("Needs csum!\n"); @@ -565,10 +566,10 @@ static unsigned int free_old_xmit_skbs(struct virtnet_info *vi) while ((s...
2018 Jan 03
6
[PATCH net-next 0/2] Enable virtio to act as a master for a passthru device
This patch series enables virtio to switch over to a VF datapath when a VF netdev is present with the same MAC address. It allows live migration of a VM with a direct attached VF without the need to setup a bond/team between a VF and virtio net device in the guest. The hypervisor needs to unplug the VF device from the guest on the source host and reset the MAC filter of the VF to initiate