On 27/02/18 23:04, Johannes Berg wrote:
Perhaps we can set some sort of flag in the driver that says "don't use
QoS" frames. In fact, ath9k already says it doesn't like QoS frames:
- skb = ieee80211_nullfunc_get(sc->hw, vif, false);
so which place creates them?
Thy only place I see QoS frames created is net/mac80211/mlme.c:899 on
master, in ieee80211_send_nullfunc, where the "true" flag was added by
commit 7b6ddeaf27ec ("mac80211: use QoS NDP for AP probing"):
skb = ieee80211_nullfunc_get(&local->hw, &sdata->vif, true);
This enables QoS for any driver, including those that do not like QoS
frames. I guess this gets called in response to a beacon, which would
explain the intermittent nature of the failure.
Kind regards,
--
Ben Caradoc-Davies <ben@xxxxxxxxxxxx>
Director
Transient Software Limited <https://transient.nz/>
New Zealand