On Mon, 2012-04-23 at 13:47 +0300, Eliad Peller wrote:
> ieee80211_mgd_teardown() is called on netdev removal, which
> occurs after the vif was already removed from the low-level
> driver, resulting in the following warning:
> Fix it by calling ieee80211_mgd_teardown() on ieee80211_do_stop().
Would you rename it to mgd_stop() as well maybe? The "teardown" name is
pretty specific here.
> +++ b/net/mac80211/iface.c
> @@ -649,6 +649,8 @@ static void ieee80211_do_stop(struct ieee80211_sub_if_data *sdata,
> if (sdata->vif.type == NL80211_IFTYPE_MESH_POINT)
> ieee80211_bss_info_change_notify(sdata,
> BSS_CHANGED_BEACON_ENABLED);
> + else if (sdata->vif.type == NL80211_IFTYPE_STATION)
> + ieee80211_mgd_teardown(sdata);
Could there be a case where the teardown could start a work item? It
might be better to make this part of the switch, and fall through to
flush_work() etc.?
johannes
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
[Linux Kernel]
[Linux Bluetooth]
[Linux Netdev]
[Kernel Newbies]
[Share Photos]
[IDE]
[Security]
[Git]
[Netfilter]
[Bugtraq]
[Photo]
[Yosemite]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Linux ATA RAID]
[Samba]
[Video 4 Linux]
[Device Mapper]
[Linux Resources]
[Free Dating]
[M2M Wireless]