search for: virtio_net_f_guest_uso6

Displaying 10 results from an estimated 10 matches for "virtio_net_f_guest_uso6".

2023 Feb 17
1
[patch net-next] net: virtio_net: implement exact header length guest feature
...ivers/net/virtio_net.c b/drivers/net/virtio_net.c index fb5e68ed3ec2..e85b03988733 100644 --- a/drivers/net/virtio_net.c +++ b/drivers/net/virtio_net.c @@ -62,7 +62,8 @@ static const unsigned long guest_offloads[] = { VIRTIO_NET_F_GUEST_UFO, VIRTIO_NET_F_GUEST_CSUM, VIRTIO_NET_F_GUEST_USO4, - VIRTIO_NET_F_GUEST_USO6 + VIRTIO_NET_F_GUEST_USO6, + VIRTIO_NET_F_GUEST_HDRLEN }; #define GUEST_OFFLOAD_GRO_HW_MASK ((1ULL << VIRTIO_NET_F_GUEST_TSO4) | \ @@ -4213,7 +4214,8 @@ static struct virtio_device_id id_table[] = { VIRTIO_NET_F_CTRL_MAC_ADDR, \ VIRTIO_NET_F_MTU, VIRTIO_NET_F_CTRL_GUEST_OFFLOADS, \...
2023 Feb 21
4
[patch net-next v2] net: virtio_net: implement exact header length guest feature
...ivers/net/virtio_net.c b/drivers/net/virtio_net.c index fb5e68ed3ec2..e85b03988733 100644 --- a/drivers/net/virtio_net.c +++ b/drivers/net/virtio_net.c @@ -62,7 +62,8 @@ static const unsigned long guest_offloads[] = { VIRTIO_NET_F_GUEST_UFO, VIRTIO_NET_F_GUEST_CSUM, VIRTIO_NET_F_GUEST_USO4, - VIRTIO_NET_F_GUEST_USO6 + VIRTIO_NET_F_GUEST_USO6, + VIRTIO_NET_F_GUEST_HDRLEN }; #define GUEST_OFFLOAD_GRO_HW_MASK ((1ULL << VIRTIO_NET_F_GUEST_TSO4) | \ @@ -4213,7 +4214,8 @@ static struct virtio_device_id id_table[] = { VIRTIO_NET_F_CTRL_MAC_ADDR, \ VIRTIO_NET_F_MTU, VIRTIO_NET_F_CTRL_GUEST_OFFLOADS, \...
2023 Feb 17
1
[patch net-next] net: virtio_net: implement exact header length guest feature
...;> --- a/drivers/net/virtio_net.c > >> +++ b/drivers/net/virtio_net.c > >> @@ -62,7 +62,8 @@ static const unsigned long guest_offloads[] = { > >> VIRTIO_NET_F_GUEST_UFO, > >> VIRTIO_NET_F_GUEST_CSUM, > >> VIRTIO_NET_F_GUEST_USO4, > >> - VIRTIO_NET_F_GUEST_USO6 > >> + VIRTIO_NET_F_GUEST_USO6, > >> + VIRTIO_NET_F_GUEST_HDRLEN > >> }; > >> > >> #define GUEST_OFFLOAD_GRO_HW_MASK ((1ULL << VIRTIO_NET_F_GUEST_TSO4) | \ > >> @@ -4213,7 +4214,8 @@ static struct virtio_device_id id_table[] = { > &...
2023 Feb 20
3
[patch net-next] net: virtio_net: implement exact header length guest feature
...;> +++ b/drivers/net/virtio_net.c > >> >> @@ -62,7 +62,8 @@ static const unsigned long guest_offloads[] = { > >> >> VIRTIO_NET_F_GUEST_UFO, > >> >> VIRTIO_NET_F_GUEST_CSUM, > >> >> VIRTIO_NET_F_GUEST_USO4, > >> >> - VIRTIO_NET_F_GUEST_USO6 > >> >> + VIRTIO_NET_F_GUEST_USO6, > >> >> + VIRTIO_NET_F_GUEST_HDRLEN > >> >> }; > >> >> > >> >> #define GUEST_OFFLOAD_GRO_HW_MASK ((1ULL << VIRTIO_NET_F_GUEST_TSO4) | \ > >> >> @@ -4213,7 +4214,8 @...
2023 Feb 20
2
[patch net-next] net: virtio_net: implement exact header length guest feature
...net/virtio_net.c >> >> >> @@ -62,7 +62,8 @@ static const unsigned long guest_offloads[] = { >> >> >> VIRTIO_NET_F_GUEST_UFO, >> >> >> VIRTIO_NET_F_GUEST_CSUM, >> >> >> VIRTIO_NET_F_GUEST_USO4, >> >> >> - VIRTIO_NET_F_GUEST_USO6 >> >> >> + VIRTIO_NET_F_GUEST_USO6, >> >> >> + VIRTIO_NET_F_GUEST_HDRLEN >> >> >> }; >> >> >> >> >> >> #define GUEST_OFFLOAD_GRO_HW_MASK ((1ULL << VIRTIO_NET_F_GUEST_TSO4) | \ >> >> >&...
2023 Feb 22
1
[patch net-next v3] net: virtio_net: implement exact header length guest feature
...ivers/net/virtio_net.c b/drivers/net/virtio_net.c index fb5e68ed3ec2..e85b03988733 100644 --- a/drivers/net/virtio_net.c +++ b/drivers/net/virtio_net.c @@ -62,7 +62,8 @@ static const unsigned long guest_offloads[] = { VIRTIO_NET_F_GUEST_UFO, VIRTIO_NET_F_GUEST_CSUM, VIRTIO_NET_F_GUEST_USO4, - VIRTIO_NET_F_GUEST_USO6 + VIRTIO_NET_F_GUEST_USO6, + VIRTIO_NET_F_GUEST_HDRLEN }; #define GUEST_OFFLOAD_GRO_HW_MASK ((1ULL << VIRTIO_NET_F_GUEST_TSO4) | \ @@ -4213,7 +4214,8 @@ static struct virtio_device_id id_table[] = { VIRTIO_NET_F_CTRL_MAC_ADDR, \ VIRTIO_NET_F_MTU, VIRTIO_NET_F_CTRL_GUEST_OFFLOADS, \...
2023 Feb 21
1
[patch net-next] net: virtio_net: implement exact header length guest feature
...t.c >>>>>>> @@ -62,7 +62,8 @@ static const unsigned long guest_offloads[] = { >>>>>>> VIRTIO_NET_F_GUEST_UFO, >>>>>>> VIRTIO_NET_F_GUEST_CSUM, >>>>>>> VIRTIO_NET_F_GUEST_USO4, >>>>>>> - VIRTIO_NET_F_GUEST_USO6 >>>>>>> + VIRTIO_NET_F_GUEST_USO6, >>>>>>> + VIRTIO_NET_F_GUEST_HDRLEN >>>>>>> }; >>>>>>> >>>>>>> #define GUEST_OFFLOAD_GRO_HW_MASK ((1ULL << VIRTIO_NET_F_GUEST_TSO4) | \ >>&g...
2023 Apr 30
1
[RFC PATCH net 2/3] virtio-net: allow usage of vrings smaller than MAX_SKB_FRAGS + 2
...ree >= 2 + MAX_SKB_FRAGS) + if (sq->vq->num_free >= vi->single_pkt_max_descs) netif_tx_wake_queue(txq); opaque = virtqueue_enable_cb_prepare(sq->vq); @@ -3862,6 +3878,15 @@ static bool virtnet_check_guest_gso(const struct virtnet_info *vi) virtio_has_feature(vi->vdev, VIRTIO_NET_F_GUEST_USO6)); } +static bool virtnet_check_host_gso(const struct virtnet_info *vi) +{ + return virtio_has_feature(vi->vdev, VIRTIO_NET_F_HOST_TSO4) || + virtio_has_feature(vi->vdev, VIRTIO_NET_F_HOST_TSO6) || + virtio_has_feature(vi->vdev, VIRTIO_NET_F_HOST_ECN) || + virtio_has_feature(vi->v...
2023 Apr 30
1
[RFC PATCH net 2/3] virtio-net: allow usage of vrings smaller than MAX_SKB_FRAGS + 2
...gt; + if (sq->vq->num_free >= vi->single_pkt_max_descs) > netif_tx_wake_queue(txq); > > opaque = virtqueue_enable_cb_prepare(sq->vq); > @@ -3862,6 +3878,15 @@ static bool virtnet_check_guest_gso(const struct virtnet_info *vi) > virtio_has_feature(vi->vdev, VIRTIO_NET_F_GUEST_USO6)); > } > > +static bool virtnet_check_host_gso(const struct virtnet_info *vi) > +{ > + return virtio_has_feature(vi->vdev, VIRTIO_NET_F_HOST_TSO4) || > + virtio_has_feature(vi->vdev, VIRTIO_NET_F_HOST_TSO6) || > + virtio_has_feature(vi->vdev, VIRTIO_NET_F_HOST_ECN...
2023 Apr 30
5
[RFC PATCH net 0/3] virtio-net: allow usage of small vrings
At the moment, if a virtio network device uses vrings with less than MAX_SKB_FRAGS + 2 entries, the device won't be functional. The following condition vq->num_free >= 2 + MAX_SKB_FRAGS will always evaluate to false, leading to TX timeouts. This patchset attempts this fix this bug, and to allow small rings down to 4 entries. The first patch introduces a new mechanism in virtio core -