Skip to content

Commit

Permalink
[MAC80211]: rx cleanups (2)
Browse files Browse the repository at this point in the history
Some more outdenting to make the code more readable.

Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: Jiri Benc <jbenc@suse.cz>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
  • Loading branch information
Johannes Berg authored and David S. Miller committed Oct 10, 2007
1 parent 52865df commit 340e11f
Showing 1 changed file with 28 additions and 14 deletions.
42 changes: 28 additions & 14 deletions net/mac80211/rx.c
Original file line number Diff line number Diff line change
Expand Up @@ -1387,21 +1387,35 @@ void __ieee80211_rx(struct ieee80211_hw *hw, struct sk_buff *skb,
if (!prepres)
continue;

if (prev) {
skb_new = skb_copy(skb, GFP_ATOMIC);
if (!skb_new) {
if (net_ratelimit())
printk(KERN_DEBUG "%s: failed to copy "
"multicast frame for %s",
local->mdev->name, prev->dev->name);
continue;
}
rx.skb = skb_new;
rx.dev = prev->dev;
rx.sdata = prev;
ieee80211_invoke_rx_handlers(local, local->rx_handlers,
&rx, sta);
/*
* frame is destined for this interface, but if it's not
* also for the previous one we handle that after the
* loop to avoid copying the SKB once too much
*/

if (!prev) {
prev = sdata;
continue;
}

/*
* frame was destined for the previous interface
* so invoke RX handlers for it
*/

skb_new = skb_copy(skb, GFP_ATOMIC);
if (!skb_new) {
if (net_ratelimit())
printk(KERN_DEBUG "%s: failed to copy "
"multicast frame for %s",
local->mdev->name, prev->dev->name);
continue;
}
rx.skb = skb_new;
rx.dev = prev->dev;
rx.sdata = prev;
ieee80211_invoke_rx_handlers(local, local->rx_handlers,
&rx, sta);
prev = sdata;
}
if (prev) {
Expand Down

0 comments on commit 340e11f

Please sign in to comment.