summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael S. Tsirkin <mst@redhat.com>2012-10-24 20:37:51 +0200
committerBen Hutchings <ben@decadent.org.uk>2012-10-30 23:27:00 +0000
commite18dbfae927d33d746f6bf8b14f2d030c12b3ba7 (patch)
tree21463684c478350e93e6c3b466fac6c19091b964
parent6a026352765b0830d1e6f1fa2a8c1c0499fc1508 (diff)
vhost: fix mergeable bufs on BE hosts
commit 910a578f7e9400a78a3b13aba0b4d2df16a2cb05 upstream. 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> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
-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 882a51fe7b3c..b76071e12ce1 100644
--- a/drivers/vhost/net.c
+++ b/drivers/vhost/net.c
@@ -371,7 +371,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? */