search for: netif_f_lro

Displaying 20 results from an estimated 139 matches for "netif_f_lro".

2019 Dec 23
5
[PATCH net] virtio_net: CTRL_GUEST_OFFLOADS depends on CTRL_VQ
...et") > > Signed-off-by: Michael S. Tsirkin <mst at redhat.com> > > --- > > > > Lightly tested. > > > > Alistair, could you please test and confirm that this resolves the > > crash for you? > > This patch doesn't work. The reason is that NETIF_F_LRO is also turned > on by TSO4/TSO6, which your patch didn't check for. So it ends up > going through the same path and crashing in the same way. > > if (virtio_has_feature(vdev, VIRTIO_NET_F_GUEST_TSO4) || > virtio_has_feature(vdev, VIRTIO_NET_F_GUEST_TSO6)) &gt...
2019 Dec 23
5
[PATCH net] virtio_net: CTRL_GUEST_OFFLOADS depends on CTRL_VQ
...et") > > Signed-off-by: Michael S. Tsirkin <mst at redhat.com> > > --- > > > > Lightly tested. > > > > Alistair, could you please test and confirm that this resolves the > > crash for you? > > This patch doesn't work. The reason is that NETIF_F_LRO is also turned > on by TSO4/TSO6, which your patch didn't check for. So it ends up > going through the same path and crashing in the same way. > > if (virtio_has_feature(vdev, VIRTIO_NET_F_GUEST_TSO4) || > virtio_has_feature(vdev, VIRTIO_NET_F_GUEST_TSO6)) &gt...
2020 Sep 28
2
[PATCH 2/2] virtio-net: ethtool configurable RXCSUM
...et_device *dev, > netdev_features_t features) > { > struct virtnet_info *vi = netdev_priv(dev); > - u64 offloads; > + u64 offloads = vi->guest_offloads & > + vi->guest_offloads_capable; > int err; > > - if ((dev->features ^ features) & NETIF_F_LRO) { > - if (vi->xdp_queue_pairs) > - return -EBUSY; > + /* Don't allow configuration while XDP is active. */ > + if (vi->xdp_queue_pairs) > + return -EBUSY; > > + if ((dev->features ^ features) & NETIF_F_LRO) { > if (features & NETIF_F_LRO) >...
2020 Sep 28
2
[PATCH 2/2] virtio-net: ethtool configurable RXCSUM
...et_device *dev, > netdev_features_t features) > { > struct virtnet_info *vi = netdev_priv(dev); > - u64 offloads; > + u64 offloads = vi->guest_offloads & > + vi->guest_offloads_capable; > int err; > > - if ((dev->features ^ features) & NETIF_F_LRO) { > - if (vi->xdp_queue_pairs) > - return -EBUSY; > + /* Don't allow configuration while XDP is active. */ > + if (vi->xdp_queue_pairs) > + return -EBUSY; > > + if ((dev->features ^ features) & NETIF_F_LRO) { > if (features & NETIF_F_LRO) >...
2020 Sep 29
2
[PATCH 2/2] virtio-net: ethtool configurable RXCSUM
...nfo *vi = netdev_priv(dev); > > > - u64 offloads; > > > + u64 offloads = vi->guest_offloads & > > > + vi->guest_offloads_capable; > > > int err; > > > > > > - if ((dev->features ^ features) & NETIF_F_LRO) { > > > - if (vi->xdp_queue_pairs) > > > - return -EBUSY; > > > + /* Don't allow configuration while XDP is active. */ > > > + if (vi->xdp_queue_pairs) > > > + return -EBUSY; > > > &...
2020 Sep 29
2
[PATCH 2/2] virtio-net: ethtool configurable RXCSUM
...nfo *vi = netdev_priv(dev); > > > - u64 offloads; > > > + u64 offloads = vi->guest_offloads & > > > + vi->guest_offloads_capable; > > > int err; > > > > > > - if ((dev->features ^ features) & NETIF_F_LRO) { > > > - if (vi->xdp_queue_pairs) > > > - return -EBUSY; > > > + /* Don't allow configuration while XDP is active. */ > > > + if (vi->xdp_queue_pairs) > > > + return -EBUSY; > > > &...
2020 Sep 29
2
[PATCH 2/2] virtio-net: ethtool configurable RXCSUM
...64 offloads; > > > > > + u64 offloads = vi->guest_offloads & > > > > > + vi->guest_offloads_capable; > > > > > int err; > > > > > > > > > > - if ((dev->features ^ features) & NETIF_F_LRO) { > > > > > - if (vi->xdp_queue_pairs) > > > > > - return -EBUSY; > > > > > + /* Don't allow configuration while XDP is active. */ > > > > > + if (vi->xdp_queue_pairs) > > > >...
2020 Sep 29
2
[PATCH 2/2] virtio-net: ethtool configurable RXCSUM
...64 offloads; > > > > > + u64 offloads = vi->guest_offloads & > > > > > + vi->guest_offloads_capable; > > > > > int err; > > > > > > > > > > - if ((dev->features ^ features) & NETIF_F_LRO) { > > > > > - if (vi->xdp_queue_pairs) > > > > > - return -EBUSY; > > > > > + /* Don't allow configuration while XDP is active. */ > > > > > + if (vi->xdp_queue_pairs) > > > >...
2020 Sep 28
7
[PATCH 1/2] virtio-net: don't disable guest csum when disable LRO
...VIRTIO_NET_F_GUEST_TSO6) | \ + (1ULL << VIRTIO_NET_F_GUEST_ECN) | \ + (1ULL << VIRTIO_NET_F_GUEST_UFO)) + struct virtnet_stat_desc { char desc[ETH_GSTRING_LEN]; size_t offset; @@ -2531,7 +2536,8 @@ static int virtnet_set_features(struct net_device *dev, if (features & NETIF_F_LRO) offloads = vi->guest_offloads_capable; else - offloads = 0; + offloads = vi->guest_offloads_capable & + ~GUEST_OFFLOAD_LRO_MASK; err = virtnet_set_guest_offloads(vi, offloads); if (err) -- 2.23.0
2020 Sep 28
7
[PATCH 1/2] virtio-net: don't disable guest csum when disable LRO
...VIRTIO_NET_F_GUEST_TSO6) | \ + (1ULL << VIRTIO_NET_F_GUEST_ECN) | \ + (1ULL << VIRTIO_NET_F_GUEST_UFO)) + struct virtnet_stat_desc { char desc[ETH_GSTRING_LEN]; size_t offset; @@ -2531,7 +2536,8 @@ static int virtnet_set_features(struct net_device *dev, if (features & NETIF_F_LRO) offloads = vi->guest_offloads_capable; else - offloads = 0; + offloads = vi->guest_offloads_capable & + ~GUEST_OFFLOAD_LRO_MASK; err = virtnet_set_guest_offloads(vi, offloads); if (err) -- 2.23.0
2020 Jan 05
0
[PATCH net] virtio_net: CTRL_GUEST_OFFLOADS depends on CTRL_VQ
...gt; > > > > > > > Lightly tested. > > > > > > > > > > Alistair, could you please test and confirm that this resolves the > > > > > crash for you? > > > > > > > > This patch doesn't work. The reason is that NETIF_F_LRO is also turned > > > > on by TSO4/TSO6, which your patch didn't check for. So it ends up > > > > going through the same path and crashing in the same way. > > > > > > > > if (virtio_has_feature(vdev, VIRTIO_NET_F_GUEST_TSO4) || > > &...
2019 Dec 24
0
[PATCH net] virtio_net: CTRL_GUEST_OFFLOADS depends on CTRL_VQ
...om> >>>>> --- >>>>> >>>>> Lightly tested. >>>>> >>>>> Alistair, could you please test and confirm that this resolves the >>>>> crash for you? >>>> This patch doesn't work. The reason is that NETIF_F_LRO is also turned >>>> on by TSO4/TSO6, which your patch didn't check for. So it ends up >>>> going through the same path and crashing in the same way. >>>> >>>> if (virtio_has_feature(vdev, VIRTIO_NET_F_GUEST_TSO4) || >>>>...
2019 Dec 25
0
[PATCH net] virtio_net: CTRL_GUEST_OFFLOADS depends on CTRL_VQ
...gt; > > > > > > > Lightly tested. > > > > > > > > > > Alistair, could you please test and confirm that this resolves the > > > > > crash for you? > > > > > > > > This patch doesn't work. The reason is that NETIF_F_LRO is also turned > > > > on by TSO4/TSO6, which your patch didn't check for. So it ends up > > > > going through the same path and crashing in the same way. > > > > > > > > if (virtio_has_feature(vdev, VIRTIO_NET_F_GUEST_TSO4) || > > &...
2020 Sep 28
1
[PATCH 2/2] virtio-net: ethtool configurable RXCSUM
..._t features) > { > struct virtnet_info *vi = netdev_priv(dev); > - u64 offloads; > + u64 offloads = vi->guest_offloads & > + vi->guest_offloads_capable; > int err; > > - if ((dev->features ^ features) & NETIF_F_LRO) { > - if (vi->xdp_queue_pairs) > - return -EBUSY; > + /* Don't allow configuration while XDP is active. */ > + if (vi->xdp_queue_pairs) > + return -EBUSY; > > + if ((dev->features ^ features) &amp...
2020 Sep 28
0
[PATCH 2/2] virtio-net: ethtool configurable RXCSUM
...7 @@ static int virtnet_set_features(struct net_device *dev, netdev_features_t features) { struct virtnet_info *vi = netdev_priv(dev); - u64 offloads; + u64 offloads = vi->guest_offloads & + vi->guest_offloads_capable; int err; - if ((dev->features ^ features) & NETIF_F_LRO) { - if (vi->xdp_queue_pairs) - return -EBUSY; + /* Don't allow configuration while XDP is active. */ + if (vi->xdp_queue_pairs) + return -EBUSY; + if ((dev->features ^ features) & NETIF_F_LRO) { if (features & NETIF_F_LRO) - offloads = vi->guest_offloads_capable;...
2020 Sep 29
0
[PATCH 2/2] virtio-net: ethtool configurable RXCSUM
...t; > struct virtnet_info *vi = netdev_priv(dev); > > - u64 offloads; > > + u64 offloads = vi->guest_offloads & > > + vi->guest_offloads_capable; > > int err; > > > > - if ((dev->features ^ features) & NETIF_F_LRO) { > > - if (vi->xdp_queue_pairs) > > - return -EBUSY; > > + /* Don't allow configuration while XDP is active. */ > > + if (vi->xdp_queue_pairs) > > + return -EBUSY; > > > > + if ((dev->fe...
2020 Sep 29
0
[PATCH 2/2] virtio-net: ethtool configurable RXCSUM
...t; > > > - u64 offloads; > > > > + u64 offloads = vi->guest_offloads & > > > > + vi->guest_offloads_capable; > > > > int err; > > > > > > > > - if ((dev->features ^ features) & NETIF_F_LRO) { > > > > - if (vi->xdp_queue_pairs) > > > > - return -EBUSY; > > > > + /* Don't allow configuration while XDP is active. */ > > > > + if (vi->xdp_queue_pairs) > > > > + return...
2019 Dec 23
0
[PATCH net] virtio_net: CTRL_GUEST_OFFLOADS depends on CTRL_VQ
...t") > > Signed-off-by: Michael S. Tsirkin <mst at redhat.com> > > --- > > > > Lightly tested. > > > > Alistair, could you please test and confirm that this resolves the > > crash for you? > > This patch doesn't work. The reason is that NETIF_F_LRO is also turned > on by TSO4/TSO6, which your patch didn't check for. So it ends up > going through the same path and crashing in the same way. > > if (virtio_has_feature(vdev, VIRTIO_NET_F_GUEST_TSO4) || > virtio_has_feature(vdev, VIRTIO_NET_F_GUEST_TSO6)) &g...
2020 Sep 29
0
[PATCH 2/2] virtio-net: ethtool configurable RXCSUM
...t; > > > + u64 offloads = vi->guest_offloads & > > > > > > + vi->guest_offloads_capable; > > > > > > int err; > > > > > > > > > > > > - if ((dev->features ^ features) & NETIF_F_LRO) { > > > > > > - if (vi->xdp_queue_pairs) > > > > > > - return -EBUSY; > > > > > > + /* Don't allow configuration while XDP is active. */ > > > > > > + if (vi->xdp_queue_pairs)...
2020 Sep 29
5
[PATCH net v2] virtio-net: don't disable guest csum when disable LRO
...VIRTIO_NET_F_GUEST_TSO6) | \ + (1ULL << VIRTIO_NET_F_GUEST_ECN) | \ + (1ULL << VIRTIO_NET_F_GUEST_UFO)) + struct virtnet_stat_desc { char desc[ETH_GSTRING_LEN]; size_t offset; @@ -2531,7 +2536,8 @@ static int virtnet_set_features(struct net_device *dev, if (features & NETIF_F_LRO) offloads = vi->guest_offloads_capable; else - offloads = 0; + offloads = vi->guest_offloads_capable & + ~GUEST_OFFLOAD_LRO_MASK; err = virtnet_set_guest_offloads(vi, offloads); if (err) -- 2.23.0