mac80211: use sdata->skb_queue for TDLS
[linux-2.6-microblaze.git] / net / mac80211 / tdls.c
index f91d02b..45e532a 100644 (file)
@@ -1920,7 +1920,7 @@ out:
        return ret;
 }
 
-static void
+void
 ieee80211_process_tdls_channel_switch(struct ieee80211_sub_if_data *sdata,
                                      struct sk_buff *skb)
 {
@@ -1971,32 +1971,6 @@ void ieee80211_teardown_tdls_peers(struct ieee80211_sub_if_data *sdata)
        rcu_read_unlock();
 }
 
-void ieee80211_tdls_chsw_work(struct work_struct *wk)
-{
-       struct ieee80211_local *local =
-               container_of(wk, struct ieee80211_local, tdls_chsw_work);
-       struct ieee80211_sub_if_data *sdata;
-       struct sk_buff *skb;
-       struct ieee80211_tdls_data *tf;
-
-       wiphy_lock(local->hw.wiphy);
-       while ((skb = skb_dequeue(&local->skb_queue_tdls_chsw))) {
-               tf = (struct ieee80211_tdls_data *)skb->data;
-               list_for_each_entry(sdata, &local->interfaces, list) {
-                       if (!ieee80211_sdata_running(sdata) ||
-                           sdata->vif.type != NL80211_IFTYPE_STATION ||
-                           !ether_addr_equal(tf->da, sdata->vif.addr))
-                               continue;
-
-                       ieee80211_process_tdls_channel_switch(sdata, skb);
-                       break;
-               }
-
-               kfree_skb(skb);
-       }
-       wiphy_unlock(local->hw.wiphy);
-}
-
 void ieee80211_tdls_handle_disconnect(struct ieee80211_sub_if_data *sdata,
                                      const u8 *peer, u16 reason)
 {