@slh and/or @ansuel, if either of you have a minute and have a device running a recent master build with the ath10k-ct driver and firmware, could you do iw list and post the output below "Supported extended features:" for the 5GHz phy?
I'm looking for a line like:
[ AIRTIME_FAIRNESS ]: airtime fairness scheduling
For example, the output from a r7800 shown here does output such a line.
The output from the r7500v2 (built Nov 8 with kernel 5.10.78, ath10k-firmware-qca99x0-ct-full-htt - 2020-11-08-1 and kmod-ath10k-ct - 5.10.78+2021-09-22-e6a7d5b5-1)
Supported extended features:
* [ VHT_IBSS ]: VHT-IBSS
* [ RRM ]: RRM
* [ SET_SCAN_DWELL ]: scan dwell setting
* [ FILS_STA ]: STA FILS (Fast Initial Link Setup)
* [ CQM_RSSI_LIST ]: multiple CQM_RSSI_THOLD records
* [ CONTROL_PORT_OVER_NL80211 ]: control port over nl80211
* [ TXQS ]: FQ-CoDel-enabled intermediate TXQs
* [ AQL ]: Airtime Queue Limits (AQL)
* [ CONTROL_PORT_NO_PREAUTH ]: disable pre-auth over nl80211 control port support
* [ DEL_IBSS_STA ]: deletion of IBSS station support
* [ SCAN_FREQ_KHZ ]: scan on kHz frequency support
* [ CONTROL_PORT_OVER_NL80211_TX_STATUS ]: tx status for nl80211 control port support
i.e. there is no indication of airtime fairness support.
+##### Airtime policy configuration ###########################################
+
+# Set the airtime policy operating mode:
+# 0 = disabled (default)
+# 1 = static config
+# 2 = per-BSS dynamic config
+# 3 = per-BSS limit mode
+#airtime_mode=0
+
+# Interval (in milliseconds) to poll the kernel for updated station activity in
+# dynamic and limit modes
+#airtime_update_interval=200
+
+# Static configuration of station weights (when airtime_mode=1). Kernel default
+# weight is 256; set higher for larger airtime share, lower for smaller share.
+# Each entry is a MAC address followed by a weight.
+#airtime_sta_weight=02:01:02:03:04:05 256
+#airtime_sta_weight=02:01:02:03:04:06 512
+
+# Per-BSS airtime weight. In multi-bss mode, set for each BSS and hostapd will
+# configure station weights to enforce the correct ratio between BSS weights
+# depending on the number of active stations. The *ratios* between different
+# BSSes is what's important, not the absolute numbers.
+# Must be set for all BSSes if airtime_mode=2 or 3, has no effect otherwise.
+#airtime_bss_weight=1
+
+# Whether the current BSS should be limited (when airtime_mode=3).
+#
+# If set, the BSS weight ratio will be applied in the case where the current BSS
+# would exceed the share defined by the BSS weight ratio. E.g., if two BSSes are
+# set to the same weights, and one is set to limited, the limited BSS will get
+# no more than half the available airtime, but if the non-limited BSS has more
+# stations active, that *will* be allowed to exceed its half of the available
+# airtime.
+#airtime_bss_limit=1
think you should tweak the hostpad.sh to add these extra feature (hardcode them to quickly test and check if the value appear in the supported values)
yes, i've been there and i've looked for some config variable to put in the hostapd config but so far its not clear to me what should be there.
Is it possible for you to check if your iw list output has an airtime fairness line and, if so, what might be in your hostapd config file that is not in mine?
Note i have built and tested the ath10k-ct driver with and without commenting out support for "airtime fairness" here.
There is no difference for me either way.
This in combination with my iw list output makes me suspect "airtime fairness" is not enabled in the ath10k-ct 99x0 firmware. Before I ping @greearb, I want to confirm that it is working for others.
I'll try playing with the config variables you posted above and see if shows up.
@anon98444528 check the updated post ahahha i posted the missing feature and in fact it looks to be disabled by default...
if you notice it does work I can think of pushing a patch to add support for it and add support to make it configurable on openwrt. (or also consider setting it to a default sane value)
i just tried adding airtime_mode=0 and restarting hostapd with no change in iw list output.
/lib/netifd/hostapd.sh does not seem to have anything related to airtime fairness commented out (i.e. i think it should work there assuming it's enabled in the firmware).
I'll look at /lib/netifd/wireless/mac80211.sh now...
but it would be really nice if someone could answer my question "does it show up in your iw list output?" and if so "what is in your hostapd-phy0.conf file related to airtime?"
Supported extended features:
* [ VHT_IBSS ]: VHT-IBSS
* [ RRM ]: RRM
* [ SET_SCAN_DWELL ]: scan dwell setting
* [ FILS_STA ]: STA FILS (Fast Initial Link Setup)
* [ CQM_RSSI_LIST ]: multiple CQM_RSSI_THOLD records
* [ CONTROL_PORT_OVER_NL80211 ]: control port over nl80211
* [ TXQS ]: FQ-CoDel-enabled intermediate TXQs
* [ AIRTIME_FAIRNESS ]: airtime fairness scheduling
* [ AQL ]: Airtime Queue Limits (AQL)
* [ CONTROL_PORT_NO_PREAUTH ]: disable pre-auth over nl80211 control port support
* [ DEL_IBSS_STA ]: deletion of IBSS station support
* [ SCAN_FREQ_KHZ ]: scan on kHz frequency support
* [ CONTROL_PORT_OVER_NL80211_TX_STATUS ]: tx status for nl80211 control port support
Is shows up for me but nothing regarding airtime fairness in both hostapd-phy*.conf files.
Since you have nothing in your hostapd-phy0.conf file, i'm pretty sure its not enabled in my firmware. I'll need to ping @greearb and hope he has the time to respond.
In the mean time, I'll try @ansuel suggestions and see if i can't get it to come up.
FWIW i recall reading that it might not be enabled on my 99x0 firmware (i.e. totally not supported for me) but i can not find that post. My wifi certainly performs like it's not enabled and I'd really like to try it.
I'd also like to know if it makes sense to not have AQL enabled if airtime fairness is not supported.