mac80211: Don't set per-BSS QoS for monitor interfaces
Sujith [Fri, 23 Jul 2010 05:17:11 +0000 (10:17 +0530)]
In AP mode, there is no need to notify the driver about QoS
changes for the monitor interface that is created. The warning
in ieee80211_bss_info_change_notify() would be hit otherwise.

Signed-off-by: Sujith <Sujith.Manoharan@atheros.com>
Acked-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>

net/mac80211/util.c

index 7947921..748387d 100644 (file)
@@ -803,8 +803,12 @@ void ieee80211_set_wmm_default(struct ieee80211_sub_if_data *sdata)
 
        /* after reinitialize QoS TX queues setting to default,
         * disable QoS at all */
-       sdata->vif.bss_conf.qos = sdata->vif.type != NL80211_IFTYPE_STATION;
-       ieee80211_bss_info_change_notify(sdata, BSS_CHANGED_QOS);
+
+       if (sdata->vif.type != NL80211_IFTYPE_MONITOR) {
+               sdata->vif.bss_conf.qos =
+                       sdata->vif.type != NL80211_IFTYPE_STATION;
+               ieee80211_bss_info_change_notify(sdata, BSS_CHANGED_QOS);
+       }
 }
 
 void ieee80211_sta_def_wmm_params(struct ieee80211_sub_if_data *sdata,