diff options
author | Arik Nemtsov <arik@wizery.com> | 2015-07-08 15:41:45 +0300 |
---|---|---|
committer | Johannes Berg <johannes.berg@intel.com> | 2015-07-17 15:40:15 +0200 |
commit | c8ff71e667d9fcf775e8b8bbd568d32d48cfb864 (patch) | |
tree | 0b2815a3d230575c1ce9dcf6419119124d30993f /net/mac80211/iface.c | |
parent | 72bbe3d1c2d7a9e257956912040ffc7ba9f71e0d (diff) |
mac80211: TDLS: handle chan-switch in RTNL locked work
Move TDLS channel-switch Rx handling into an RTNL locked work. This is
required to add proper regulatory checking to incoming channel-switch
requests.
Queue incoming requests in a dedicated skb queue and handle the request
in a device-specific work to avoid deadlocking on interface removal.
Signed-off-by: Arik Nemtsov <arikx.nemtsov@intel.com>
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'net/mac80211/iface.c')
-rw-r--r-- | net/mac80211/iface.c | 2 |
1 files changed, 0 insertions, 2 deletions
diff --git a/net/mac80211/iface.c b/net/mac80211/iface.c index 553ac6dd4867..0fba7f97a963 100644 --- a/net/mac80211/iface.c +++ b/net/mac80211/iface.c @@ -1242,8 +1242,6 @@ static void ieee80211_iface_work(struct work_struct *work) WLAN_BACK_RECIPIENT, 0, false); mutex_unlock(&local->sta_mtx); - } else if (skb->pkt_type == IEEE80211_SDATA_QUEUE_TDLS_CHSW) { - ieee80211_process_tdls_channel_switch(sdata, skb); } else if (ieee80211_is_action(mgmt->frame_control) && mgmt->u.action.category == WLAN_CATEGORY_BACK) { int len = skb->len; |