mac80211: call set_wmm_default only for valid vifs
mac80211 calls ieee80211_set_wmm_default (which in turn calls drv_conf_tx()) for every new interface, including "internal" ones (e.g. monitor interface, which the low-level driver doesn't know about). Limit this call only to valid interfaces. Reported-by: Johannes Berg <johannes@sipsolutions.net> Signed-off-by: Eliad Peller <eliad@wizery.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
committed by
John W. Linville
parent
3a8aea098c
commit
5903459102
@@ -286,6 +286,13 @@ static int ieee80211_do_open(struct net_device *dev, bool coming_up)
|
|||||||
netif_carrier_off(dev);
|
netif_carrier_off(dev);
|
||||||
else
|
else
|
||||||
netif_carrier_on(dev);
|
netif_carrier_on(dev);
|
||||||
|
|
||||||
|
/*
|
||||||
|
* set default queue parameters so drivers don't
|
||||||
|
* need to initialise the hardware if the hardware
|
||||||
|
* doesn't start up with sane defaults
|
||||||
|
*/
|
||||||
|
ieee80211_set_wmm_default(sdata);
|
||||||
}
|
}
|
||||||
|
|
||||||
set_bit(SDATA_STATE_RUNNING, &sdata->state);
|
set_bit(SDATA_STATE_RUNNING, &sdata->state);
|
||||||
@@ -329,15 +336,8 @@ static int ieee80211_do_open(struct net_device *dev, bool coming_up)
|
|||||||
if (coming_up)
|
if (coming_up)
|
||||||
local->open_count++;
|
local->open_count++;
|
||||||
|
|
||||||
if (hw_reconf_flags) {
|
if (hw_reconf_flags)
|
||||||
ieee80211_hw_config(local, hw_reconf_flags);
|
ieee80211_hw_config(local, hw_reconf_flags);
|
||||||
/*
|
|
||||||
* set default queue parameters so drivers don't
|
|
||||||
* need to initialise the hardware if the hardware
|
|
||||||
* doesn't start up with sane defaults
|
|
||||||
*/
|
|
||||||
ieee80211_set_wmm_default(sdata);
|
|
||||||
}
|
|
||||||
|
|
||||||
ieee80211_recalc_ps(local, -1);
|
ieee80211_recalc_ps(local, -1);
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user