mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-25 13:14:07 +08:00
wifi: mac80211: ibss: move disconnect to wiphy work
Move the IBSS disconnect work to be a wiphy work. Signed-off-by: Johannes Berg <johannes.berg@intel.com>
This commit is contained in:
parent
ec3252bff7
commit
87351d0926
@ -561,7 +561,8 @@ void ieee80211_ibss_stop(struct ieee80211_sub_if_data *sdata)
|
||||
{
|
||||
struct ieee80211_if_ibss *ifibss = &sdata->u.ibss;
|
||||
|
||||
cancel_work_sync(&ifibss->csa_connection_drop_work);
|
||||
wiphy_work_cancel(sdata->local->hw.wiphy,
|
||||
&ifibss->csa_connection_drop_work);
|
||||
}
|
||||
|
||||
static struct sta_info *ieee80211_ibss_finish_sta(struct sta_info *sta)
|
||||
@ -730,7 +731,8 @@ static void ieee80211_ibss_disconnect(struct ieee80211_sub_if_data *sdata)
|
||||
mutex_unlock(&local->mtx);
|
||||
}
|
||||
|
||||
static void ieee80211_csa_connection_drop_work(struct work_struct *work)
|
||||
static void ieee80211_csa_connection_drop_work(struct wiphy *wiphy,
|
||||
struct wiphy_work *work)
|
||||
{
|
||||
struct ieee80211_sub_if_data *sdata =
|
||||
container_of(work, struct ieee80211_sub_if_data,
|
||||
@ -896,8 +898,8 @@ ieee80211_ibss_process_chanswitch(struct ieee80211_sub_if_data *sdata,
|
||||
return true;
|
||||
disconnect:
|
||||
ibss_dbg(sdata, "Can't handle channel switch, disconnect\n");
|
||||
ieee80211_queue_work(&sdata->local->hw,
|
||||
&ifibss->csa_connection_drop_work);
|
||||
wiphy_work_queue(sdata->local->hw.wiphy,
|
||||
&ifibss->csa_connection_drop_work);
|
||||
|
||||
ieee80211_ibss_csa_mark_radar(sdata);
|
||||
|
||||
@ -1733,8 +1735,8 @@ void ieee80211_ibss_setup_sdata(struct ieee80211_sub_if_data *sdata)
|
||||
timer_setup(&ifibss->timer, ieee80211_ibss_timer, 0);
|
||||
INIT_LIST_HEAD(&ifibss->incomplete_stations);
|
||||
spin_lock_init(&ifibss->incomplete_lock);
|
||||
INIT_WORK(&ifibss->csa_connection_drop_work,
|
||||
ieee80211_csa_connection_drop_work);
|
||||
wiphy_work_init(&ifibss->csa_connection_drop_work,
|
||||
ieee80211_csa_connection_drop_work);
|
||||
}
|
||||
|
||||
/* scan finished notification */
|
||||
|
@ -553,7 +553,7 @@ struct ieee80211_if_managed {
|
||||
|
||||
struct ieee80211_if_ibss {
|
||||
struct timer_list timer;
|
||||
struct work_struct csa_connection_drop_work;
|
||||
struct wiphy_work csa_connection_drop_work;
|
||||
|
||||
unsigned long last_scan_completed;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user