diff options
author | florian <florian@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2012-09-26 12:53:54 +0000 |
---|---|---|
committer | florian <florian@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2012-09-26 12:53:54 +0000 |
commit | b20bdba44f93acca727995f06eb79b563b428aab (patch) | |
tree | 8060c1637d4a2c695d485037630e94eb0f4fd838 /package/mac80211/patches/300-pending_work.patch | |
parent | 237dcc51195f6d64219f023e4a303034bed165e6 (diff) |
[package] mac80211: refresh patches
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@33557 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/mac80211/patches/300-pending_work.patch')
-rw-r--r-- | package/mac80211/patches/300-pending_work.patch | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/package/mac80211/patches/300-pending_work.patch b/package/mac80211/patches/300-pending_work.patch index 1e25e352ca..219144c0b9 100644 --- a/package/mac80211/patches/300-pending_work.patch +++ b/package/mac80211/patches/300-pending_work.patch @@ -180,7 +180,7 @@ static void ieee80211_iface_work(struct work_struct *work) { struct ieee80211_sub_if_data *sdata = -@@ -1101,6 +1144,9 @@ static void ieee80211_iface_work(struct +@@ -1101,6 +1144,9 @@ static void ieee80211_iface_work(struct break; ieee80211_mesh_rx_queued_mgmt(sdata, skb); break; @@ -281,6 +281,13 @@ + list_for_each_entry_rcu(sdata, &local->interfaces, list) { + if (!sdata->dev) + continue; ++ ++ if (skb->dev != sdata->dev) ++ continue; ++ ++ found = true; ++ break; ++ } - p2p_sdata = rcu_dereference(local->p2p_sdata); - if (p2p_sdata) { @@ -289,18 +296,11 @@ - skb->len, acked, GFP_ATOMIC); - } - rcu_read_unlock(); -+ if (skb->dev != sdata->dev) -+ continue; -+ -+ found = true; -+ break; - } -+ + if (!skb->dev) { + sdata = rcu_dereference(local->p2p_sdata); + if (sdata) + found = true; -+ } + } + + if (!found) + skb->dev = NULL; |