[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1309256662.32717.311.camel@zakaz.uk.xensource.com>
Date: Tue, 28 Jun 2011 11:24:22 +0100
From: Ian Campbell <Ian.Campbell@...citrix.com>
To: David Miller <davem@...emloft.net>
CC: "eric.dumazet@...il.com" <eric.dumazet@...il.com>,
"jeremy@...p.org" <jeremy@...p.org>,
"netdev@...r.kernel.org" <netdev@...r.kernel.org>,
"xen-devel@...ts.xensource.com" <xen-devel@...ts.xensource.com>,
"rusty@...tcorp.com.au" <rusty@...tcorp.com.au>
Subject: Re: SKB paged fragment lifecycle on receive
On Mon, 2011-06-27 at 23:49 +0100, David Miller wrote:
> From: Ian Campbell <Ian.Campbell@...citrix.com>
> Date: Mon, 27 Jun 2011 15:42:04 +0100
>
> > However it seems like this might still have a problem if your SKBs are
> > ever cloned. What happens in this case, e.g if a user of AF_PACKET sends
> > a broadcast via a device associated with a bridge[1] (where it would be
> > flooded)?
>
> You don't need a bridge to get a clone on transmit, the packet
> scheduler can do clones. Just grep for skb_clone in the packet
> action handlers net/sched/act_*.c
Are you sure? I only see skb_cloned() and skb_clone_writeable() under
there )(3.0-rc4) and not any actual skb_clone()s.
The only actual clone I see under there is in net/sched/sch_netem.c.
However it sounds like it is expected that a clone can happen on pretty
any skb which makes the frag lifecycle issue seem like one which could
effect anything which sends a page to the network without relinquishing
complete control of it (common in any kind of zero-copy scenario).
Ian.
--
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