diff options
author | Eliad Peller <eliad@wizery.com> | 2011-10-16 10:57:31 +0200 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2011-11-08 15:53:57 -0500 |
commit | 59034591029e9f3b691fe02ff60938556dba5683 (patch) | |
tree | 287baf9c4e5d0a81948c0f321937ef17a6d96d05 | |
parent | 3a8aea098c8ebe3437d877542d138085be33346c (diff) |
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>
-rw-r--r-- | net/mac80211/iface.c | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/net/mac80211/iface.c b/net/mac80211/iface.c index 30d73552e9ab..33a974663f79 100644 --- a/net/mac80211/iface.c +++ b/net/mac80211/iface.c @@ -286,6 +286,13 @@ static int ieee80211_do_open(struct net_device *dev, bool coming_up) netif_carrier_off(dev); else 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); @@ -329,15 +336,8 @@ static int ieee80211_do_open(struct net_device *dev, bool coming_up) if (coming_up) local->open_count++; - if (hw_reconf_flags) { + if (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); |