summaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorMichael S. Tsirkin <mst@redhat.com>2012-10-24 20:37:51 +0200
committerDavid S. Miller <davem@davemloft.net>2012-10-24 23:19:30 -0400
commit910a578f7e9400a78a3b13aba0b4d2df16a2cb05 (patch)
tree761ccdf0279f31f298e070211ea3bd98c3c0f0da /drivers
parent2b9c128e9580e79db48bd3aacb2b4873544e01e8 (diff)
downloadlinux-910a578f7e9400a78a3b13aba0b4d2df16a2cb05.tar.gz
linux-910a578f7e9400a78a3b13aba0b4d2df16a2cb05.tar.xz
vhost: fix mergeable bufs on BE hosts
We copy head count to a 16 bit field, this works by chance on LE but on BE guest gets 0. Fix it up. Signed-off-by: Michael S. Tsirkin <mst@redhat.com> Tested-by: Alexander Graf <agraf@suse.de> Cc: stable@vger.kernel.org Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers')
-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 072cbbadbc36..7f93f34b7f91 100644
--- a/drivers/vhost/net.c
+++ b/drivers/vhost/net.c
@@ -379,7 +379,8 @@ static void handle_rx(struct vhost_net *net)
.hdr.gso_type = VIRTIO_NET_HDR_GSO_NONE
};
size_t total_len = 0;
- int err, headcount, mergeable;
+ int err, mergeable;
+ s16 headcount;
size_t vhost_hlen, sock_hlen;
size_t vhost_len, sock_len;
/* TODO: check that we are running from vhost_worker? */