2017-11-10 00:48:56

by Toke Høiland-Jørgensen

[permalink] [raw]
Subject: [PATCH v2] ath10k: Re-enable TXQs for all devices

Commit 4ca1807815aa6801aaced7fdefa9edacc2521767 disables the use of the
mac80211 TXQs for some devices because of a theoretical throughput
regression. The original regression report[1] was related to fq_codel
qdisc drop performance, which was fixed in
9d18562a227874289fda8ca5d117d8f503f1dcca. Since then, we have not seen
the TXQ-related regression, so it should be safe to re-enable TXQs.

[1] http://lists.infradead.org/pipermail/ath10k/2016-April/007266.html

Signed-off-by: Toke Høiland-Jørgensen <[email protected]>
---
This has been in LEDE trunk for a couple of months now with good
results.

Changes since v1:
- Update commit message to refer to original report and the fix for it.
- Add ath10k list to cc

drivers/net/wireless/ath/ath10k/mac.c | 9 ---------
1 file changed, 9 deletions(-)

diff --git a/drivers/net/wireless/ath/ath10k/mac.c b/drivers/net/wireless/ath/ath10k/mac.c
index 0a947eef348d..ca596ecd2d64 100644
--- a/drivers/net/wireless/ath/ath10k/mac.c
+++ b/drivers/net/wireless/ath/ath10k/mac.c
@@ -8329,15 +8329,6 @@ int ath10k_mac_register(struct ath10k *ar)
ath10k_warn(ar, "failed to initialise DFS pattern detector\n");
}

- /* Current wake_tx_queue implementation imposes a significant
- * performance penalty in some setups. The tx scheduling code needs
- * more work anyway so disable the wake_tx_queue unless firmware
- * supports the pull-push mechanism.
- */
- if (!test_bit(ATH10K_FW_FEATURE_PEER_FLOW_CONTROL,
- ar->running_fw->fw_file.fw_features))
- ar->ops->wake_tx_queue = NULL;
-
ret = ath10k_mac_init_rd(ar);
if (ret) {
ath10k_err(ar, "failed to derive regdom: %d\n", ret);
--
2.15.0


2017-11-11 13:38:09

by Felix Fietkau

[permalink] [raw]
Subject: Re: [PATCH v2] ath10k: Re-enable TXQs for all devices

On 2017-11-10 01:48, Toke Høiland-Jørgensen wrote:
> Commit 4ca1807815aa6801aaced7fdefa9edacc2521767 disables the use of the
> mac80211 TXQs for some devices because of a theoretical throughput
> regression. The original regression report[1] was related to fq_codel
> qdisc drop performance, which was fixed in
> 9d18562a227874289fda8ca5d117d8f503f1dcca. Since then, we have not seen
> the TXQ-related regression, so it should be safe to re-enable TXQs.
That commit is unrelated to the fq/codel implementations in mac80211,
since mac80211 with txq does not use qdisc.

- Felix

2017-11-12 14:40:27

by Toke Høiland-Jørgensen

[permalink] [raw]
Subject: Re: [PATCH v2] ath10k: Re-enable TXQs for all devices

Felix Fietkau <[email protected]> writes:

> On 2017-11-10 01:48, Toke H=C3=B8iland-J=C3=B8rgensen wrote:
>> Commit 4ca1807815aa6801aaced7fdefa9edacc2521767 disables the use of the
>> mac80211 TXQs for some devices because of a theoretical throughput
>> regression. The original regression report[1] was related to fq_codel
>> qdisc drop performance, which was fixed in
>> 9d18562a227874289fda8ca5d117d8f503f1dcca. Since then, we have not seen
>> the TXQ-related regression, so it should be safe to re-enable TXQs.
> That commit is unrelated to the fq/codel implementations in mac80211,
> since mac80211 with txq does not use qdisc.

Yup. Which is why it's odd that the initial bug report referred to this;
that would indicate that the regression had nothing to do with TXQs in
the first place, and we could have merged this ages ago?

-Toke

2017-12-02 14:15:01

by Kalle Valo

[permalink] [raw]
Subject: Re: [v2] ath10k: Re-enable TXQs for all devices

Toke Høiland-Jørgensen wrote:

> Commit 4ca1807815aa ("ath10k: disable wake_tx_queue for older devices")
> disables the use of the mac80211 TXQs for some devices because of a theoretical
> throughput regression. The original regression report[1] was related to
> fq_codel qdisc drop performance, which was fixed in commit 9d18562a2278
> ("fq_codel: add batch ability to fq_codel_drop()"). Since then, we have not
> seen the TXQ-related regression, so it should be safe to re-enable TXQs.
>
> [1] http://lists.infradead.org/pipermail/ath10k/2016-April/007266.html
>
> Signed-off-by: Toke Høiland-Jørgensen <[email protected]>
> Signed-off-by: Kalle Valo <[email protected]>

Patch applied to ath-next branch of ath.git, thanks.

170e8e6176d4 ath10k: re-enable TXQs for all devices

--
https://patchwork.kernel.org/patch/10052197/

https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches