Michael S. Tsirkin
2012-Oct-15 17:55 UTC
[PATCH for-3.7] 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 at redhat.com> Tested-by: Alexander Graf <agraf at suse.de> Cc: stable at kernel.org --- drivers/vhost/net.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/vhost/net.c b/drivers/vhost/net.c index 9ab6d47..2bb463c 100644 --- a/drivers/vhost/net.c +++ b/drivers/vhost/net.c @@ -448,7 +448,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? */ -- MST
Michael S. Tsirkin
2012-Oct-21 12:49 UTC
[PATCH for-3.7] vhost: fix mergeable bufs on BE hosts
On Mon, Oct 15, 2012 at 07:55:34PM +0200, Michael S. Tsirkin wrote:> 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 at redhat.com> > Tested-by: Alexander Graf <agraf at suse.de> > Cc: stable at kernel.orgPing. Dave, could you apply this to -net please?> --- > drivers/vhost/net.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/drivers/vhost/net.c b/drivers/vhost/net.c > index 9ab6d47..2bb463c 100644 > --- a/drivers/vhost/net.c > +++ b/drivers/vhost/net.c > @@ -448,7 +448,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? */ > -- > MST