summaryrefslogtreecommitdiffstats
path: root/drivers/vhost/net.c
diff options
context:
space:
mode:
authorMichael S. Tsirkin2014-10-24 13:23:52 +0200
committerMichael S. Tsirkin2014-12-09 11:05:30 +0100
commite4fca7d6ff1a8f784336b04aff3278cb7fc76332 (patch)
treebbb1f14c56e25d2c3722b0d5ada74f74d64add55 /drivers/vhost/net.c
parentvhost/net: virtio 1.0 byte swap (diff)
downloadkernel-qcow2-linux-e4fca7d6ff1a8f784336b04aff3278cb7fc76332.tar.gz
kernel-qcow2-linux-e4fca7d6ff1a8f784336b04aff3278cb7fc76332.tar.xz
kernel-qcow2-linux-e4fca7d6ff1a8f784336b04aff3278cb7fc76332.zip
vhost/net: larger header for virtio 1.0
Signed-off-by: Michael S. Tsirkin <mst@redhat.com> Reviewed-by: Jason Wang <jasowang@redhat.com> Reviewed-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Diffstat (limited to 'drivers/vhost/net.c')
-rw-r--r--drivers/vhost/net.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/vhost/net.c b/drivers/vhost/net.c
index c218188c8880..8ff4a6dd2387 100644
--- a/drivers/vhost/net.c
+++ b/drivers/vhost/net.c
@@ -1030,7 +1030,8 @@ static int vhost_net_set_features(struct vhost_net *n, u64 features)
size_t vhost_hlen, sock_hlen, hdr_len;
int i;
- hdr_len = (features & (1 << VIRTIO_NET_F_MRG_RXBUF)) ?
+ hdr_len = (features & ((1ULL << VIRTIO_NET_F_MRG_RXBUF) |
+ (1ULL << VIRTIO_F_VERSION_1))) ?
sizeof(struct virtio_net_hdr_mrg_rxbuf) :
sizeof(struct virtio_net_hdr);
if (features & (1 << VHOST_NET_F_VIRTIO_NET_HDR)) {