Add BSS_CHANGE_QOS_DISABLED flag to pass to drivers when want to disable QoS (aka WMM, WME). When AP do not provide QoS parameters, we should assume that it not supporting QoS and we should not send QoS frames to it. Signed-off-by: Stanislaw Gruszka <sgruszka@xxxxxxxxxx> --- include/net/mac80211.h | 2 ++ net/mac80211/mlme.c | 2 +- 2 files changed, 3 insertions(+), 1 deletions(-) diff --git a/include/net/mac80211.h b/include/net/mac80211.h index 45d7d44..11a192d 100644 --- a/include/net/mac80211.h +++ b/include/net/mac80211.h @@ -144,6 +144,7 @@ struct ieee80211_low_level_stats { * new beacon (beaconing modes) * @BSS_CHANGED_BEACON_ENABLED: Beaconing should be * enabled/disabled (beaconing modes) + * @BSS_CHANGED_QOS_DISABLED: QoS should be disabled */ enum ieee80211_bss_change { BSS_CHANGED_ASSOC = 1<<0, @@ -156,6 +157,7 @@ enum ieee80211_bss_change { BSS_CHANGED_BSSID = 1<<7, BSS_CHANGED_BEACON = 1<<8, BSS_CHANGED_BEACON_ENABLED = 1<<9, + BSS_CHANGED_QOS_DISABLED = 1<<10, }; /** diff --git a/net/mac80211/mlme.c b/net/mac80211/mlme.c index be5f723..64be5f4 100644 --- a/net/mac80211/mlme.c +++ b/net/mac80211/mlme.c @@ -1130,7 +1130,7 @@ static bool ieee80211_assoc_success(struct ieee80211_work *wk, ieee80211_sta_wmm_params(local, ifmgd, elems.wmm_param, elems.wmm_param_len); else - ieee80211_set_wmm_default(sdata); + changed |= BSS_CHANGED_QOS_DISABLED; local->oper_channel = wk->chan; -- 1.6.2.5 -- 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