Search Linux Wireless

Re: [PATCH] mac80211: call ieee80211_mgd_teardown() on interface stop

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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


[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Wireless Personal Area Network]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux