Skip to content

Commit

Permalink
wlcore: clear roc_vif on iface removal
Browse files Browse the repository at this point in the history
When removing an interface currently performing a ROC operation, clear
the current ROC state. This is useful especially during recovery and
keeps mac80211 in sync to our state.

Signed-off-by: Arik Nemtsov <arik@wizery.com>
Signed-off-by: Luciano Coelho <coelho@ti.com>
  • Loading branch information
Arik Nemtsov authored and Luciano Coelho committed Dec 4, 2012
1 parent 2718bf4 commit 5d979f3
Showing 1 changed file with 5 additions and 0 deletions.
5 changes: 5 additions & 0 deletions drivers/net/wireless/ti/wlcore/main.c
Original file line number Diff line number Diff line change
Expand Up @@ -2414,6 +2414,11 @@ static void __wl1271_op_remove_interface(struct wl1271 *wl,
wl->sched_vif = NULL;
}

if (wl->roc_vif == vif) {
wl->roc_vif = NULL;
ieee80211_remain_on_channel_expired(wl->hw);
}

if (!test_bit(WL1271_FLAG_RECOVERY_IN_PROGRESS, &wl->flags)) {
/* disable active roles */
ret = wl1271_ps_elp_wakeup(wl);
Expand Down

0 comments on commit 5d979f3

Please sign in to comment.