[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Tue, 06 May 2008 01:23:55 +0200
From: Johannes Berg <johannes@...solutions.net>
To: David Miller <davem@...emloft.net>
Cc: tomasw@...il.com, linville@...driver.com, netdev@...r.kernel.org,
linux-wireless@...r.kernel.org
Subject: Re: [RFC v2] mac80211: assign needed_headroom/tailroom for netdevs
On Mon, 2008-05-05 at 16:14 -0700, David Miller wrote:
> > Right, that makes sense. But will it ever return false? skb_cloned()
> > returns true often enough, and we only accept linear skbs, but I think I
> > don't understand yet what skb_header_cloned() vs. skb_cloned() refers
> > to. Which exactly is the header space I'm allowed to modify when
> > skb_header_cloned() returns false?
>
> skb_header_cloned() will return false always if the buffer is not
> cloned.
Right, it's less than skb_cloned().
> If it is cloned, it makes sure the data reference count allows
> for modification of the buffer.
Which buffer? skb->data..skb->tail? And isn't that, in mac80211's case,
at least currently all the buffer anyway?
> For normal traffic, you should see skb_header_cloned() always return
> false unless a network tap like tcpdump is registered.
Interesting point. I'll have to see when socket filters are run,
wpa_supplicant could have a tap open I think. Maybe that's why I'm
seeing so many cloned packets. I think I'll stacktrace skb_clone and
print that out.
johannes
Download attachment "signature.asc" of type "application/pgp-signature" (829 bytes)
Powered by blists - more mailing lists