Re: mac80211 truesize bugs

!MAILaRCHIVE_VOTE_RePLACE
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
To: <johannes@...>
Cc: <herbert@...>, <mb@...>, <netdev@...>, <linux-wireless@...>
Date: Friday, May 2, 2008 - 7:33 pm

From: Johannes Berg <johannes@sipsolutions.net>
Date: Fri, 02 May 2008 22:38:51 +0200


That's possible.

There are paths, that, although they could take advantage of the
fact that all of the non-header packet data is going to come from
pages, they don't and allocate a full MTU skb->data area anyways.


Sure the name could change, but the problem wouldn't.

We can't update skb->truesize during arbitray skb->data reallocations,
because it could corrupt the socket accounting.

On the other hand, if we provide ways for users to subvert the socket
buffer limits, we might as well not try to limit anything.

Take a look at some ethernet drivers that implement TSO in a way that
requires munging the IP headers for whatever reason.  If they need to
COW the packet data in order to modify it, they always do this with
pskb_expand_head(skb, 0, 0, GFP_*) exactly so that they don't modify
the SKB data size, and exactly so that the skb->truesize value stays
accurate.

Try to find out exactly what's going wrong here, you seem to be
close.  Once we know the precise issue we can talk about real
changes to make this easier to cope with and debug in the future.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
mac80211 truesize bugs, Johannes Berg, (Wed Apr 30, 10:02 pm)
frame status API? (was: mac80211 truesize bugs), Johannes Berg, (Sat May 3, 9:55 pm)
Re: mac80211 truesize bugs, Michael Buesch, (Thu May 1, 4:58 am)
Re: mac80211 truesize bugs, Johannes Berg, (Thu May 1, 5:08 am)
Re: mac80211 truesize bugs, Michael Buesch, (Thu May 1, 5:32 am)
Re: mac80211 truesize bugs, Johannes Berg, (Thu May 1, 5:34 am)
Re: mac80211 truesize bugs, David Miller, (Thu May 1, 5:20 am)
Re: mac80211 truesize bugs, Johannes Berg, (Thu May 1, 5:32 am)
Re: mac80211 truesize bugs, David Miller, (Thu May 1, 5:43 am)
Re: mac80211 truesize bugs, Herbert Xu, (Thu May 1, 6:36 am)
Re: mac80211 truesize bugs, David Miller, (Thu May 1, 6:49 am)
Re: mac80211 truesize bugs, Herbert Xu, (Thu May 1, 7:02 am)
Re: mac80211 truesize bugs, David Miller, (Thu May 1, 6:53 am)
Re: mac80211 truesize bugs, Johannes Berg, (Thu May 1, 6:58 am)
Re: mac80211 truesize bugs, Herbert Xu, (Thu May 1, 7:03 am)
Re: mac80211 truesize bugs, Johannes Berg, (Sat May 3, 8:38 am)
Re: mac80211 truesize bugs, Herbert Xu, (Sat May 3, 8:59 am)
Re: mac80211 truesize bugs, Johannes Berg, (Sat May 3, 12:03 pm)
Re: mac80211 truesize bugs, Johannes Berg, (Sat May 3, 6:56 pm)
Re: mac80211 truesize bugs, David Miller, (Sat May 3, 7:07 pm)
Re: mac80211 truesize bugs, Johannes Berg, (Sat May 3, 7:15 pm)
Re: mac80211 truesize bugs, Johannes Berg, (Fri May 2, 4:38 pm)
Re: mac80211 truesize bugs, David Miller, (Fri May 2, 7:33 pm)
Re: mac80211 truesize bugs, Johannes Berg, (Sat May 3, 7:52 am)
Re: mac80211 truesize bugs, David Miller, (Sat May 3, 9:03 pm)
Re: mac80211 truesize bugs, Johannes Berg, (Sat May 3, 9:42 pm)
Re: mac80211 truesize bugs, Johannes Berg, (Sat May 3, 10:09 pm)
Re: mac80211 truesize bugs, Herbert Xu, (Sat May 3, 10:02 pm)
Re: mac80211 truesize bugs, Johannes Berg, (Sat May 3, 10:08 pm)
Re: mac80211 truesize bugs, Herbert Xu, (Sat May 3, 10:12 pm)
Re: mac80211 truesize bugs, Johannes Berg, (Sat May 3, 10:22 pm)
Re: mac80211 truesize bugs, Herbert Xu, (Sat May 3, 11:16 pm)
Re: mac80211 truesize bugs, David Miller, (Sun May 4, 6:38 pm)
Re: mac80211 truesize bugs, Johannes Berg, (Sun May 4, 4:47 am)
Re: mac80211 truesize bugs, Johannes Berg, (Sun May 4, 5:14 am)
Re: mac80211 truesize bugs, Herbert Xu, (Sun May 4, 5:44 am)
Re: mac80211 truesize bugs, Johannes Berg, (Sun May 4, 5:52 am)
Re: mac80211 truesize bugs, Johannes Berg, (Sun May 4, 7:25 am)
Re: mac80211 truesize bugs, Johannes Berg, (Sun May 4, 8:28 am)
Re: mac80211 truesize bugs, Herbert Xu, (Sun May 4, 8:45 am)
Re: mac80211 truesize bugs, Johannes Berg, (Sun May 4, 10:06 am)
Re: mac80211 truesize bugs, David Miller, (Sun May 4, 6:45 pm)
Re: mac80211 truesize bugs, Johannes Berg, (Sun May 4, 6:48 pm)
Re: mac80211 truesize bugs, Johannes Berg, (Sun May 4, 12:03 pm)
Re: mac80211 truesize bugs, Johannes Berg, (Sun May 4, 1:47 pm)
Re: mac80211 truesize bugs, Johannes Berg, (Sun May 4, 8:52 am)
Re: mac80211 truesize bugs, Herbert Xu, (Sun May 4, 8:56 am)
Re: mac80211 truesize bugs, Johannes Berg, (Sun May 4, 9:00 am)
Re: mac80211 truesize bugs, Johannes Berg, (Sun May 4, 8:48 am)
Re: mac80211 truesize bugs, Johannes Berg, (Sat May 3, 5:37 am)
Re: mac80211 truesize bugs, Johannes Berg, (Sat May 3, 10:25 am)
Re: mac80211 truesize bugs, David Miller, (Mon May 12, 11:17 pm)
Re: mac80211 truesize bugs, John W. Linville, (Tue May 13, 4:39 pm)
Re: mac80211 truesize bugs, Johannes Berg, (Tue May 13, 4:59 pm)
Re: mac80211 truesize bugs, Tomas Winkler, (Tue May 13, 5:12 pm)
Re: mac80211 truesize bugs, Johannes Berg, (Tue May 13, 5:37 pm)
Re: mac80211 truesize bugs, David Miller, (Tue May 13, 6:09 pm)
Re: mac80211 truesize bugs, Johannes Berg, (Thu May 1, 8:05 am)
Re: mac80211 truesize bugs, Johannes Berg, (Thu May 1, 7:49 am)
Re: mac80211 truesize bugs, Johannes Berg, (Thu May 1, 7:38 am)
Re: mac80211 truesize bugs, Johannes Berg, (Sat May 3, 7:24 pm)
Re: mac80211 truesize bugs, David Miller, (Sat May 3, 7:32 pm)
Re: mac80211 truesize bugs, Johannes Berg, (Sat May 3, 7:43 pm)
Re: mac80211 truesize bugs, Johannes Berg, (Thu May 1, 5:48 am)
Re: mac80211 truesize bugs, David Miller, (Thu May 1, 5:56 am)
Re: mac80211 truesize bugs, Johannes Berg, (Thu May 1, 6:08 am)
Re: mac80211 truesize bugs, David Miller, (Thu May 1, 6:32 am)
Re: mac80211 truesize bugs, Johannes Berg, (Thu May 1, 6:45 am)