]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
ath10k: fix get invalid tx rate for Mesh metric
authorMiaoqing Pan <miaoqing@codeaurora.org>
Wed, 6 Nov 2019 18:04:37 +0000 (20:04 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 4 Jan 2020 12:39:48 +0000 (13:39 +0100)
[ Upstream commit 05a11003a56507023f18d3249a4d4d119c0a3e9c ]

ath10k does not provide transmit rate info per MSDU
in tx completion, mark that as -1 so mac80211
will ignore the rates. This fixes mac80211 update Mesh
link metric with invalid transmit rate info.

Tested HW: QCA9984
Tested FW: 10.4-3.9.0.2-00035

Signed-off-by: Hou Bao Hou <houbao@codeaurora.org>
Signed-off-by: Anilkumar Kolli <akolli@codeaurora.org>
Signed-off-by: Miaoqing Pan <miaoqing@codeaurora.org>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/net/wireless/ath/ath10k/txrx.c

index 9852c5d51139ebdaabcd943463afd258a818bde1..beeb6be06939b11ed7be80233470c1d5fc9d49ae 100644 (file)
@@ -99,6 +99,8 @@ int ath10k_txrx_tx_unref(struct ath10k_htt *htt,
 
        info = IEEE80211_SKB_CB(msdu);
        memset(&info->status, 0, sizeof(info->status));
+       info->status.rates[0].idx = -1;
+
        trace_ath10k_txrx_tx_unref(ar, tx_done->msdu_id);
 
        if (tx_done->status == HTT_TX_COMPL_STATE_DISCARD) {