diff options
author | Jason Wang <jasowang@redhat.com> | 2014-02-21 13:08:04 +0800 |
---|---|---|
committer | Willy Tarreau <w@1wt.eu> | 2014-05-19 07:54:14 +0200 |
commit | 6421a2a4c25e94eab1f93628090e833acf4a8b43 (patch) | |
tree | 7bd594055fdabb6ee025fed22c0dbc6aa8d6f481 | |
parent | dc66dd92bd8f9ebfea5e3f72a270c06f23670f92 (diff) |
virtio-net: alloc big buffers also when guest can receive UFO
[ Upstream commit 0e7ede80d929ff0f830c44a543daa1acd590c749 ]
We should alloc big buffers also when guest can receive UFO
packets to let the big packets fit into guest rx buffer.
Fixes 5c5167515d80f78f6bb538492c423adcae31ad65
(virtio-net: Allow UFO feature to be set and advertised.)
Cc: Rusty Russell <rusty@rustcorp.com.au>
Cc: Michael S. Tsirkin <mst@redhat.com>
Cc: Sridhar Samudrala <sri@us.ibm.com>
Signed-off-by: Jason Wang <jasowang@redhat.com>
Acked-by: Michael S. Tsirkin <mst@redhat.com>
Acked-by: Rusty Russell <rusty@rustcorp.com.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Willy Tarreau <w@1wt.eu>
-rw-r--r-- | drivers/net/virtio_net.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/net/virtio_net.c b/drivers/net/virtio_net.c index bf6d850a658..97a56f0f1af 100644 --- a/drivers/net/virtio_net.c +++ b/drivers/net/virtio_net.c @@ -904,7 +904,8 @@ static int virtnet_probe(struct virtio_device *vdev) /* If we can receive ANY GSO packets, we must allocate large ones. */ if (virtio_has_feature(vdev, VIRTIO_NET_F_GUEST_TSO4) || virtio_has_feature(vdev, VIRTIO_NET_F_GUEST_TSO6) - || virtio_has_feature(vdev, VIRTIO_NET_F_GUEST_ECN)) + || virtio_has_feature(vdev, VIRTIO_NET_F_GUEST_ECN) + || virtio_has_feature(vdev, VIRTIO_NET_F_GUEST_UFO)) vi->big_packets = true; if (virtio_has_feature(vdev, VIRTIO_NET_F_MRG_RXBUF)) |