Skip to content

Commit

Permalink
mac80211: fix remain-on-channel (non-)cancelling
Browse files Browse the repository at this point in the history
Felix Liao reported that when an interface is set DOWN
while another interface is executing a ROC, the warning
in ieee80211_start_next_roc() (about the first item on
the list having started already) triggers.

This is because ieee80211_roc_purge() calls it even if
it never actually changed the list of ROC items. To fix
this, simply remove the function call. If it is needed
then it will be done by the ieee80211_sw_roc_work()
function when the ROC item that is being removed while
active is cleaned up.

Cc: stable@vger.kernel.org
Reported-by: Felix Liao <Felix.Liao@watchguard.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
  • Loading branch information
Johannes Berg authored and John W. Linville committed Nov 26, 2012
1 parent 53c5251 commit 6bdd253
Showing 1 changed file with 0 additions and 2 deletions.
2 changes: 0 additions & 2 deletions net/mac80211/offchannel.c
Original file line number Diff line number Diff line change
Expand Up @@ -458,8 +458,6 @@ void ieee80211_roc_purge(struct ieee80211_sub_if_data *sdata)
list_move_tail(&roc->list, &tmp_list);
roc->abort = true;
}

ieee80211_start_next_roc(local);
mutex_unlock(&local->mtx);

list_for_each_entry_safe(roc, tmp, &tmp_list, list) {
Expand Down

0 comments on commit 6bdd253

Please sign in to comment.