[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20100928144311.GB15294@redhat.com>
Date: Tue, 28 Sep 2010 16:43:11 +0200
From: "Michael S. Tsirkin" <mst@...hat.com>
To: Arnd Bergmann <arnd@...db.de>
Cc: Ben Hutchings <bhutchings@...arflare.com>, xiaohui.xin@...el.com,
netdev@...r.kernel.org, kvm@...r.kernel.org,
linux-kernel@...r.kernel.org, mingo@...e.hu, davem@...emloft.net,
herbert@...dor.hengli.com.au, jdike@...ux.intel.com,
Sridhar Samudrala <sri@...ibm.com>
Subject: Re: [PATCH v11 13/17] Add mp(mediate passthru) device.
On Tue, Sep 28, 2010 at 04:39:59PM +0200, Arnd Bergmann wrote:
> On Tuesday 28 September 2010, Michael S. Tsirkin wrote:
> > > > + skb_reserve(skb, NET_IP_ALIGN);
> > > > + skb_put(skb, len);
> > > > +
> > > > + if (skb_copy_datagram_from_iovec(skb, 0, iov, 0, len)) {
> > > > + kfree_skb(skb);
> > > > + return -EAGAIN;
> > > > + }
> > > > +
> > > > + skb->protocol = eth_type_trans(skb, mp->dev);
> > >
> > > Why are you calling eth_type_trans() on transmit?
> >
> > So that GSO can work. BTW macvtap does:
> >
> > skb_set_network_header(skb, ETH_HLEN);
> > skb_reset_mac_header(skb);
> > skb->protocol = eth_hdr(skb)->h_proto;
> >
> > and I think this is broken for vlans. Arnd?
>
> Hmm, that code (besides set_network_header) was added by Sridhar
> for GSO support. I believe I originally did eth_type_trans but
> had to change it before that time because it broke something.
> Unfortunately, my memory on that is not very good any more.
>
> Can you be more specific what the problem is? Do you think
> it breaks when a guest sends VLAN tagged frames or when macvtap
> is connected to a VLAN interface that adds another tag (or
> only the combination)?
>
> Arnd
I expect the protocol value to be wrong when guest sends vlan tagged
frames as 802.1q frames have a different format.
--
MST
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists