diff --git a/net/mac80211/main.c b/net/mac80211/main.c index 798a91b100cc277d154bde089eb6f4745f47b6b6..ded5c3843e061a13e1d82be4666b746c829c467c 100644 --- a/net/mac80211/main.c +++ b/net/mac80211/main.c @@ -732,6 +732,12 @@ void ieee80211_unregister_hw(struct ieee80211_hw *hw) rtnl_unlock(); + /* + * Now all work items will be gone, but the + * timer might still be armed, so delete it + */ + del_timer_sync(&local->work_timer); + cancel_work_sync(&local->reconfig_filter); ieee80211_clear_tx_pending(local);