diff options
author | John W. Linville <linville@tuxdriver.com> | 2013-02-19 14:56:34 -0500 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2013-02-19 14:56:34 -0500 |
commit | 0b7164458fc184455239ea3676af1b362df1ce1d (patch) | |
tree | 6b968c6ec46e7a949e930de85f75afc337128b97 /net/mac80211/iface.c | |
parent | 303c07db487be59ae9fda10600ea65ca11c21497 (diff) | |
parent | b53cf458ea20dd7f5e32611366f63728e40c9021 (diff) |
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next into for-davem
Diffstat (limited to 'net/mac80211/iface.c')
-rw-r--r-- | net/mac80211/iface.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/net/mac80211/iface.c b/net/mac80211/iface.c index 86c83084542..2c059e54e88 100644 --- a/net/mac80211/iface.c +++ b/net/mac80211/iface.c @@ -294,7 +294,8 @@ static int ieee80211_check_queues(struct ieee80211_sub_if_data *sdata) } } - if ((sdata->vif.type != NL80211_IFTYPE_AP) || + if ((sdata->vif.type != NL80211_IFTYPE_AP && + sdata->vif.type != NL80211_IFTYPE_MESH_POINT) || !(sdata->local->hw.flags & IEEE80211_HW_QUEUE_CONTROL)) { sdata->vif.cab_queue = IEEE80211_INVAL_HW_QUEUE; return 0; @@ -695,6 +696,9 @@ static void ieee80211_do_stop(struct ieee80211_sub_if_data *sdata, ieee80211_roc_purge(sdata); + if (sdata->vif.type == NL80211_IFTYPE_STATION) + ieee80211_mgd_stop(sdata); + /* * Remove all stations associated with this interface. * @@ -782,8 +786,6 @@ static void ieee80211_do_stop(struct ieee80211_sub_if_data *sdata, } } spin_unlock_irqrestore(&ps->bc_buf.lock, flags); - } else if (sdata->vif.type == NL80211_IFTYPE_STATION) { - ieee80211_mgd_stop(sdata); } if (going_down) |