From: Eric Dumazet <eric.dumazet@gmail.com>
To: Jarek Poplawski <jarkao2@gmail.com>
Cc: David Miller <davem@davemloft.net>,
shemminger@vyatta.com, herbert@gondor.apana.org.au,
netdev@vger.kernel.org
Subject: Re: [PATCH] sky2: don't do GRO on second port
Date: Thu, 02 Sep 2010 11:31:49 +0200 [thread overview]
Message-ID: <1283419909.2454.137.camel@edumazet-laptop> (raw)
In-Reply-To: <20100902083327.GA6246@ff.dom.local>
Le jeudi 02 septembre 2010 à 08:33 +0000, Jarek Poplawski a écrit :
> On Wed, Sep 01, 2010 at 02:51:51PM -0700, David Miller wrote:
> > The only scenerio you can guarentee that all packets for a given
> > flow key will be treated the same is the one where the input device
> > is the same as well.
> >
> > When there is a single napi --> device mapping, it works, but without
> > that invariant it doesn't.
>
> Do you mean a single napi can't be used eg. for vlan_gro and napi_gro?
> (napi_gro handles flows for skb->dev different from napi->dev or I
> miss something?)
>
Same napi can be used both for vlan tagged trafic and "non tagged
trafic".
vlan_gro_common() does the right thing, when initializing skb->dev to
the vlan device, before doing the GRO loop.
So if we receive two packets on same ethernet device, two different
vlans, vlan_gro_common() automatically say they are not part of the same
flow, even if upper layers would say "it's ok for these two packets to
merge". Of course, we wont ask upper layers what they think :)
So we must keep the test against skb->dev, because of vlans,
diffs = (unsigned long)p->dev ^ (unsigned long)skb->dev;
(both in vlan_gro_common() and __napi_gro_receive())
next prev parent reply other threads:[~2010-09-02 9:31 UTC|newest]
Thread overview: 40+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-08-27 20:50 [PATCH] net: Fix vlan_gro_frags vs netpoll and bonding paths Jarek Poplawski
2010-08-28 0:13 ` Herbert Xu
2010-08-28 9:44 ` Jarek Poplawski
2010-08-28 10:54 ` [RFC] gro: Is it ok to share a single napi from several devs ? Eric Dumazet
2010-08-28 14:31 ` Jarek Poplawski
2010-08-28 14:48 ` Eric Dumazet
2010-08-28 15:16 ` Jarek Poplawski
2010-08-28 17:14 ` Stephen Hemminger
2010-08-28 21:41 ` David Miller
2010-08-28 22:31 ` Stephen Hemminger
2010-08-28 22:33 ` David Miller
2010-08-29 9:59 ` Jarek Poplawski
2010-08-29 17:06 ` David Miller
2010-08-29 18:39 ` Eric Dumazet
2010-08-30 6:42 ` Jarek Poplawski
2010-08-30 15:57 ` Stephen Hemminger
2010-08-30 16:50 ` David Miller
2010-08-30 17:51 ` [PATCH] sky2: don't do GRO on second port Stephen Hemminger
2010-08-30 19:09 ` Jarek Poplawski
2010-09-01 21:51 ` David Miller
2010-09-01 21:55 ` Stephen Hemminger
2010-09-02 9:18 ` Jarek Poplawski
2010-09-02 12:53 ` Jarek Poplawski
2010-09-02 16:30 ` David Miller
2010-09-02 16:48 ` Jarek Poplawski
2010-09-02 8:33 ` Jarek Poplawski
2010-09-02 9:31 ` Eric Dumazet [this message]
2010-09-02 9:55 ` Jarek Poplawski
2010-09-02 10:41 ` Eric Dumazet
2010-09-02 11:02 ` Jarek Poplawski
2010-09-02 12:09 ` Eric Dumazet
2010-09-02 12:28 ` Jarek Poplawski
2010-09-02 17:08 ` David Miller
2010-09-02 21:26 ` Herbert Xu
2010-09-03 5:23 ` Eric Dumazet
2010-09-02 9:32 ` Jarek Poplawski
2010-08-30 18:36 ` [RFC] gro: Is it ok to share a single napi from several devs ? Jarek Poplawski
2010-08-30 19:59 ` [RFC] netpoll: " Eric Dumazet
2010-08-30 20:12 ` Stephen Hemminger
2010-08-30 20:19 ` Eric Dumazet
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1283419909.2454.137.camel@edumazet-laptop \
--to=eric.dumazet@gmail.com \
--cc=davem@davemloft.net \
--cc=herbert@gondor.apana.org.au \
--cc=jarkao2@gmail.com \
--cc=netdev@vger.kernel.org \
--cc=shemminger@vyatta.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox