Displaying 3 results from an estimated 3 matches for "virtnet_set_big_packets".
2023 Apr 30
1
[RFC PATCH net 2/3] virtio-net: allow usage of vrings smaller than MAX_SKB_FRAGS + 2
...i->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->vdev, VIRTIO_NET_F_HOST_UFO) ||
+ virtio_has_feature(vi->vdev, VIRTIO_NET_F_HOST_USO);
+}
+
static void virtnet_set_big_packets(struct virtnet_info *vi, const int mtu)
{
bool guest_gso = virtnet_check_guest_gso(vi);
@@ -3876,6 +3901,112 @@ static void virtnet_set_big_packets(struct virtnet_info *vi, const int mtu)
}
}
+static u16 virtnet_calc_max_descs(struct virtnet_info *vi)
+{
+ if (vi->svring) {
+ if (virtne...
2023 Apr 30
1
[RFC PATCH net 2/3] virtio-net: allow usage of vrings smaller than MAX_SKB_FRAGS + 2
...||
> + virtio_has_feature(vi->vdev, VIRTIO_NET_F_HOST_TSO6) ||
> + virtio_has_feature(vi->vdev, VIRTIO_NET_F_HOST_ECN) ||
> + virtio_has_feature(vi->vdev, VIRTIO_NET_F_HOST_UFO) ||
> + virtio_has_feature(vi->vdev, VIRTIO_NET_F_HOST_USO);
> +}
> +
> static void virtnet_set_big_packets(struct virtnet_info *vi, const int mtu)
> {
> bool guest_gso = virtnet_check_guest_gso(vi);
> @@ -3876,6 +3901,112 @@ static void virtnet_set_big_packets(struct virtnet_info *vi, const int mtu)
> }
> }
>
> +static u16 virtnet_calc_max_descs(struct virtnet_info *vi)
>...
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 -