On Wed, 2009-10-28 at 13:13 -0700, Reinette Chatre wrote: > From: Zhu Yi <yi.zhu@xxxxxxxxx> > > This fixed a BUG_ON in __skb_trim() when paged rx is used in > iwlwifi driver. Yes, the whole mac80211 stack doesn't support > paged SKB yet. But let's start the work slowly from small > code snippets. > > Reported-and-tested-by: Abhijeet Kolekar <abhijeet.kolekar@xxxxxxxxx> > Signed-off-by: Zhu Yi <yi.zhu@xxxxxxxxx> > Signed-off-by: Reinette Chatre <reinette.chatre@xxxxxxxxx> Acked-by: Johannes Berg <johannes@xxxxxxxxxxxxxxxx> we'll also be working on moving more paged RX awareness into the stack so other drivers can benefit and things get more efficient. johannes > --- > net/mac80211/rx.c | 8 ++++---- > 1 files changed, 4 insertions(+), 4 deletions(-) > > diff --git a/net/mac80211/rx.c b/net/mac80211/rx.c > index 5c385e3..a50d5f3 100644 > --- a/net/mac80211/rx.c > +++ b/net/mac80211/rx.c > @@ -1337,10 +1337,10 @@ ieee80211_deliver_skb(struct ieee80211_rx_data *rx) > skb = NULL; > } else { > u8 *data = skb->data; > - size_t len = skb->len; > - u8 *new = __skb_push(skb, align); > - memmove(new, data, len); > - __skb_trim(skb, len); > + size_t len = skb_headlen(skb); > + skb->data -= align; > + memmove(skb->data, data, len); > + skb_set_tail_pointer(skb, len); > } > } > #endif
Attachment:
signature.asc
Description: This is a digitally signed message part