search for: active_stats

Displaying 16 results from an estimated 16 matches for "active_stats".

2018 Feb 17
1
[RFC PATCH v3 2/3] virtio_net: Extend virtio to use VF datapath when available
...+ memcpy(stats, &vbi->bypass_stats, sizeof(*stats)); > + > + rcu_read_lock(); > + > + child_netdev = rcu_dereference(vbi->active_netdev); > + if (child_netdev) { > + new = dev_get_stats(child_netdev, &temp); > + virtnet_bypass_fold_stats(stats, new, &vbi->active_stats); > + memcpy(&vbi->active_stats, new, sizeof(*new)); > + } > + > + child_netdev = rcu_dereference(vbi->backup_netdev); > + if (child_netdev) { > + new = dev_get_stats(child_netdev, &temp); > + virtnet_bypass_fold_stats(stats, new, &vbi->backup_stats); &g...
2018 Feb 16
0
[RFC PATCH v3 2/3] virtio_net: Extend virtio to use VF datapath when available
...+/* bypass state maintained when BACKUP feature is enabled */ +struct virtnet_bypass_info { + /* passthru netdev with same MAC */ + struct net_device __rcu *active_netdev; + + /* virtio_net netdev */ + struct net_device __rcu *backup_netdev; + + /* active netdev stats */ + struct rtnl_link_stats64 active_stats; + + /* backup netdev stats */ + struct rtnl_link_stats64 backup_stats; + + /* aggregated stats */ + struct rtnl_link_stats64 bypass_stats; + + /* spinlock while updating stats */ + spinlock_t stats_lock; +}; + struct virtnet_info { struct virtio_device *vdev; struct virtqueue *cvq; @@ -206,6...
2018 Apr 05
0
[RFC PATCH net-next v5 3/4] virtio_net: Extend virtio to use VF datapath when available
...+/* bypass state maintained when BACKUP feature is enabled */ +struct virtnet_bypass_info { + /* passthru netdev with same MAC */ + struct net_device __rcu *active_netdev; + + /* virtio_net netdev */ + struct net_device __rcu *backup_netdev; + + /* active netdev stats */ + struct rtnl_link_stats64 active_stats; + + /* backup netdev stats */ + struct rtnl_link_stats64 backup_stats; + + /* aggregated stats */ + struct rtnl_link_stats64 bypass_stats; + + /* spinlock while updating stats */ + spinlock_t stats_lock; +}; + +static int virtnet_bypass_open(struct net_device *dev) +{ + struct virtnet_bypass_info...
2018 Feb 16
8
[RFC PATCH v3 0/3] Enable virtio_net to act as a backup for a passthru device
Patch 1 introduces a new feature bit VIRTIO_NET_F_BACKUP that can be used by hypervisor to indicate that virtio_net interface should act as a backup for another device with the same MAC address. Ppatch 2 is in response to the community request for a 3 netdev solution. However, it creates some issues we'll get into in a moment. It extends virtio_net to use alternate datapath when available
2018 Feb 16
8
[RFC PATCH v3 0/3] Enable virtio_net to act as a backup for a passthru device
Patch 1 introduces a new feature bit VIRTIO_NET_F_BACKUP that can be used by hypervisor to indicate that virtio_net interface should act as a backup for another device with the same MAC address. Ppatch 2 is in response to the community request for a 3 netdev solution. However, it creates some issues we'll get into in a moment. It extends virtio_net to use alternate datapath when available
2018 Apr 11
2
[RFC PATCH net-next v6 2/4] net: Introduce generic bypass module
...s highly misleading as it has completely different meaning that in bond for example. I noted that in my previous review already. Please change it. >+ >+ /* virtio_net netdev */ >+ struct net_device __rcu *backup_netdev; >+ >+ /* active netdev stats */ >+ struct rtnl_link_stats64 active_stats; >+ >+ /* backup netdev stats */ >+ struct rtnl_link_stats64 backup_stats; >+ >+ /* aggregated stats */ >+ struct rtnl_link_stats64 bypass_stats; >+ >+ /* spinlock while updating stats */ >+ spinlock_t stats_lock; >+}; >+ >+#if IS_ENABLED(CONFIG_NET_BYPASS) >+...
2018 Apr 11
2
[RFC PATCH net-next v6 2/4] net: Introduce generic bypass module
...s highly misleading as it has completely different meaning that in bond for example. I noted that in my previous review already. Please change it. >+ >+ /* virtio_net netdev */ >+ struct net_device __rcu *backup_netdev; >+ >+ /* active netdev stats */ >+ struct rtnl_link_stats64 active_stats; >+ >+ /* backup netdev stats */ >+ struct rtnl_link_stats64 backup_stats; >+ >+ /* aggregated stats */ >+ struct rtnl_link_stats64 bypass_stats; >+ >+ /* spinlock while updating stats */ >+ spinlock_t stats_lock; >+}; >+ >+#if IS_ENABLED(CONFIG_NET_BYPASS) >+...
2018 Apr 10
0
[RFC PATCH net-next v6 2/4] net: Introduce generic bypass module
...pass_netdev; + struct bypass_ops __rcu *ops; +}; + +/* bypass state */ +struct bypass_info { + /* passthru netdev with same MAC */ + struct net_device __rcu *active_netdev; + + /* virtio_net netdev */ + struct net_device __rcu *backup_netdev; + + /* active netdev stats */ + struct rtnl_link_stats64 active_stats; + + /* backup netdev stats */ + struct rtnl_link_stats64 backup_stats; + + /* aggregated stats */ + struct rtnl_link_stats64 bypass_stats; + + /* spinlock while updating stats */ + spinlock_t stats_lock; +}; + +#if IS_ENABLED(CONFIG_NET_BYPASS) + +int bypass_master_create(struct net_device *backup...
2018 Apr 06
2
[RFC PATCH net-next v5 3/4] virtio_net: Extend virtio to use VF datapath when available
...CKUP feature is enabled */ >+struct virtnet_bypass_info { >+ /* passthru netdev with same MAC */ >+ struct net_device __rcu *active_netdev; >+ >+ /* virtio_net netdev */ >+ struct net_device __rcu *backup_netdev; >+ >+ /* active netdev stats */ >+ struct rtnl_link_stats64 active_stats; >+ >+ /* backup netdev stats */ >+ struct rtnl_link_stats64 backup_stats; >+ >+ /* aggregated stats */ >+ struct rtnl_link_stats64 bypass_stats; >+ >+ /* spinlock while updating stats */ >+ spinlock_t stats_lock; >+}; >+ >+static int virtnet_bypass_open(struct n...
2018 Apr 06
2
[RFC PATCH net-next v5 3/4] virtio_net: Extend virtio to use VF datapath when available
...CKUP feature is enabled */ >+struct virtnet_bypass_info { >+ /* passthru netdev with same MAC */ >+ struct net_device __rcu *active_netdev; >+ >+ /* virtio_net netdev */ >+ struct net_device __rcu *backup_netdev; >+ >+ /* active netdev stats */ >+ struct rtnl_link_stats64 active_stats; >+ >+ /* backup netdev stats */ >+ struct rtnl_link_stats64 backup_stats; >+ >+ /* aggregated stats */ >+ struct rtnl_link_stats64 bypass_stats; >+ >+ /* spinlock while updating stats */ >+ spinlock_t stats_lock; >+}; >+ >+static int virtnet_bypass_open(struct n...
2018 Apr 11
0
[RFC PATCH net-next v6 2/4] net: Introduce generic bypass module
...t too happy with it. netvsc uses vf_netdev, are you OK with this? Or another option is 'passthru' > > >> + >> + /* virtio_net netdev */ >> + struct net_device __rcu *backup_netdev; >> + >> + /* active netdev stats */ >> + struct rtnl_link_stats64 active_stats; >> + >> + /* backup netdev stats */ >> + struct rtnl_link_stats64 backup_stats; >> + >> + /* aggregated stats */ >> + struct rtnl_link_stats64 bypass_stats; >> + >> + /* spinlock while updating stats */ >> + spinlock_t stats_lock; >> +};...
2018 Apr 10
6
[RFC PATCH net-next v6 0/4] Enable virtio_net to act as a backup for a passthru device
The main motivation for this patch is to enable cloud service providers to provide an accelerated datapath to virtio-net enabled VMs in a transparent manner with no/minimal guest userspace changes. This also enables hypervisor controlled live migration to be supported with VMs that have direct attached SR-IOV VF devices. Patch 1 introduces a new feature bit VIRTIO_NET_F_BACKUP that can be used
2018 Apr 05
6
[RFC PATCH net-next v5 0/4] Enable virtio_net to act as a backup for a passthru device
The main motivation for this patch is to enable cloud service providers to provide an accelerated datapath to virtio-net enabled VMs in a transparent manner with no/minimal guest userspace changes. This also enables hypervisor controlled live migration to be supported with VMs that have direct attached SR-IOV VF devices. Patch 1 introduces a new feature bit VIRTIO_NET_F_BACKUP that can be used
2018 Apr 18
2
[RFC PATCH net-next v6 2/4] net: Introduce generic bypass module
...t insist on "stolen". Just sounds right. > > > >> >> >> > + >> > + /* virtio_net netdev */ >> > + struct net_device __rcu *backup_netdev; >> > + >> > + /* active netdev stats */ >> > + struct rtnl_link_stats64 active_stats; >> > + >> > + /* backup netdev stats */ >> > + struct rtnl_link_stats64 backup_stats; >> > + >> > + /* aggregated stats */ >> > + struct rtnl_link_stats64 bypass_stats; >> > + >> > + /* spinlock while updating stats */ >&gt...
2018 Apr 18
2
[RFC PATCH net-next v6 2/4] net: Introduce generic bypass module
...t insist on "stolen". Just sounds right. > > > >> >> >> > + >> > + /* virtio_net netdev */ >> > + struct net_device __rcu *backup_netdev; >> > + >> > + /* active netdev stats */ >> > + struct rtnl_link_stats64 active_stats; >> > + >> > + /* backup netdev stats */ >> > + struct rtnl_link_stats64 backup_stats; >> > + >> > + /* aggregated stats */ >> > + struct rtnl_link_stats64 bypass_stats; >> > + >> > + /* spinlock while updating stats */ >&gt...
2018 Apr 06
0
[RFC PATCH net-next v5 3/4] virtio_net: Extend virtio to use VF datapath when available
...{ >> + rcu_assign_pointer(vbi->backup_netdev, child_netdev); >> + dev_get_stats(vbi->backup_netdev, &vbi->backup_stats); >> + } else { >> + rcu_assign_pointer(vbi->active_netdev, child_netdev); >> + dev_get_stats(vbi->active_netdev, &vbi->active_stats); >> + bypass_netdev->min_mtu = child_netdev->min_mtu; >> + bypass_netdev->max_mtu = child_netdev->max_mtu; >> + } >> + >> + netdev_info(bypass_netdev, "child:%s joined\n", child_netdev->name); >> + >> + return 0; >> +} >...