search for: bypass_stat

Displaying 15 results from an estimated 15 matches for "bypass_stat".

Did you mean: bypass_stats
2018 Feb 17
1
[RFC PATCH v3 2/3] virtio_net: Extend virtio to use VF datapath when available
...rtnl_link_stats64 *stats) > +{ > + struct virtnet_bypass_info *vbi = netdev_priv(dev); > + const struct rtnl_link_stats64 *new; > + struct rtnl_link_stats64 temp; > + struct net_device *child_netdev; > + > + spin_lock(&vbi->stats_lock); > + 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-&...
2018 Feb 16
0
[RFC PATCH v3 2/3] virtio_net: Extend virtio to use VF datapath when available
...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 +228,9 @@ struct virtnet_info { u32 speed; unsigned long guest_offloads; + + /* upper netdev created when BACKUP feature enabled */...
2018 Apr 05
0
[RFC PATCH net-next v5 3/4] virtio_net: Extend virtio to use VF datapath when available
...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 *vbi = netdev_priv(dev); + struct net_device *active_netdev, *backup_netdev; + int err; + + netif_carrier_off(dev); + netif_tx_wake_all_qu...
2018 Apr 11
2
[RFC PATCH net-next v6 2/4] net: Introduce generic bypass module
...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_netdev, >+ struct bypass_master **pbypass_master); >+void bypass_master_destroy(struct bypass_ma...
2018 Apr 11
2
[RFC PATCH net-next v6 2/4] net: Introduce generic bypass module
...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_netdev, >+ struct bypass_master **pbypass_master); >+void bypass_master_destroy(struct bypass_ma...
2018 Apr 10
0
[RFC PATCH net-next v6 2/4] net: Introduce generic bypass module
...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_netdev, + struct bypass_master **pbypass_master); +void bypass_master_destroy(struct bypass_master *bypass_master); + +int bypass_mast...
2018 Apr 11
0
[RFC PATCH net-next v6 2/4] net: Introduce generic bypass module
...__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_netdev, >> + struct bypass_master **pbypass_master); &gt...
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 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 06
2
[RFC PATCH net-next v5 3/4] virtio_net: Extend virtio to use VF datapath when available
...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 *vbi = netdev_priv(dev); >+ struct net_device *active_netdev, *backup_netdev; >+ int err; >+ >...
2018 Apr 06
2
[RFC PATCH net-next v5 3/4] virtio_net: Extend virtio to use VF datapath when available
...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 *vbi = netdev_priv(dev); >+ struct net_device *active_netdev, *backup_netdev; >+ int err; >+ >...
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; > + /* 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_netdev, >> > +...
2018 Apr 18
2
[RFC PATCH net-next v6 2/4] net: Introduce generic bypass module
...t; > + /* 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_netdev, >> > +...