From mboxrd@z Thu Jan 1 00:00:00 1970 From: Mark McLoughlin Subject: Re: [PATCH 1/1] qemu-kvm: virtio-net: Re-instate GSO code removed upstream Date: Tue, 29 Sep 2009 21:45:51 +0100 Message-ID: <1254257151.29022.11.camel@blaa> References: <1241459088.26045.1.camel@lappy> <1241513785-28738-1-git-send-email-markmc@redhat.com> Reply-To: Mark McLoughlin Mime-Version: 1.0 Content-Type: text/plain Content-Transfer-Encoding: 7bit Cc: kvm@vger.kernel.org To: avi@redhat.com Return-path: Received: from mx1.redhat.com ([209.132.183.28]:51834 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751222AbZI2UrQ (ORCPT ); Tue, 29 Sep 2009 16:47:16 -0400 Received: from int-mx03.intmail.prod.int.phx2.redhat.com (int-mx03.intmail.prod.int.phx2.redhat.com [10.5.11.16]) by mx1.redhat.com (8.13.8/8.13.8) with ESMTP id n8TKlKZA028286 for ; Tue, 29 Sep 2009 16:47:20 -0400 In-Reply-To: <1241513785-28738-1-git-send-email-markmc@redhat.com> Sender: kvm-owner@vger.kernel.org List-ID: On Tue, 2009-05-05 at 09:56 +0100, Mark McLoughlin wrote: > This commit: > > commit 559a8f45f34cc50d1a60b4f67a06614d506b2e01 > Subject: Remove stray GSO code from virtio_net (Mark McLoughlin) > > Removed some GSO code from upstream qemu.git, but it needs to > be re-instated in qemu-kvm.git. > > Reported-by: Sridhar Samudrala > Signed-off-by: Mark McLoughlin > --- > hw/virtio-net.c | 5 +++++ > 1 files changed, 5 insertions(+), 0 deletions(-) > > diff --git a/hw/virtio-net.c b/hw/virtio-net.c > index ac8e030..e5d7add 100644 > --- a/hw/virtio-net.c > +++ b/hw/virtio-net.c > @@ -424,6 +424,11 @@ static int receive_filter(VirtIONet *n, const uint8_t *buf, int size) > if (n->promisc) > return 1; > > +#ifdef TAP_VNET_HDR > + if (tap_has_vnet_hdr(n->vc->vlan->first_client)) > + ptr += sizeof(struct virtio_net_hdr); > +#endif > + > if (!memcmp(&ptr[12], vlan, sizeof(vlan))) { > int vid = be16_to_cpup((uint16_t *)(ptr + 14)) & 0xfff; > if (!(n->vlans[vid >> 5] & (1U << (vid & 0x1f)))) I'm not sure[1] how we didn't notice, but this has been broken on the stable-0.10 branch since 0.10.3; please apply there too See: https://bugzilla.redhat.com/522994 Cheers, Mark. [1] - well, one reason is that libvirt doesn't seem to be enabling vnet_hdr at the moment. That's the next thing to look at