[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20100603124717.GB315@gondor.apana.org.au>
Date: Thu, 3 Jun 2010 22:47:17 +1000
From: Herbert Xu <herbert@...dor.apana.org.au>
To: jamal <hadi@...erus.ca>
Cc: Jiri Pirko <jpirko@...hat.com>, netdev@...r.kernel.org,
davem@...emloft.net, kaber@...sh.net
Subject: Re: Question about an assignment in handle_ing()
On Thu, Jun 03, 2010 at 08:43:50AM -0400, jamal wrote:
>
> On Thu, 2010-06-03 at 18:01 +1000, Herbert Xu wrote:
> > On Sun, May 30, 2010 at 09:29:10AM -0400, jamal wrote:
>
> > > The packet path is:
> > > -->eth0-->tcpdump eth0-->pedit-->mirror to dummy0-->tcpdump dummy0
> >
> > Well this doesn't guarantee a cloned packet at all. Once af_packet
> > receives the packet it'll wake up any listeners like tcpdump, if
> > tcpdump gets to it before pedit runs then the packet won't be
> > cloned anymore.
>
> I may be misreading, but:
> This is the point i have been trying to make, Herbert;-> There is no
> _guarantee_ that the first tcpdump will see the packet that came out of
> eth0 instead of seeing the packet that came out the pedit part of the
> pipeline. I need to see the correct packet. I know with my check
> this is guaranteed.
You *are* misreading what I wrote.
As I've repeatedly stated, it is guaranteed that either tcpdump
is finished with the skb, or you will see it as cloned.
Anything else is a serious bug in our stack, regardless of what
pedit does.
In fact pedit is buggy today because you're modifying a packet
that may be cloned.
Cheers,
--
Visit Openswan at http://www.openswan.org/
Email: Herbert Xu ~{PmV>HI~} <herbert@...dor.apana.org.au>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
--
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