From nobody Sun Feb 8 14:31:43 2026 Received: from e3i103.smtp2go.com (e3i103.smtp2go.com [158.120.84.103]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 4CBC11A841B for ; Fri, 17 Jan 2025 19:49:35 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=158.120.84.103 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1737143377; cv=none; b=gRbfIgqMEVXUZJq2a1lnpactfjoJ+A38uwjZa8bfMPf03V93E9n9vZ6uBvKRv3R4/uyUfmvB+p7TUVltjnboVbpS6ONyrEdSM9FSQt6OJSmBacd4moyeU5Rb4jnLmVLxXjk+LiF/KwYEazSzAuEqiCv5fAA+5Yv1JpohUx0AmOI= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1737143377; c=relaxed/simple; bh=QDjtg/vpm93iydWubIhe0cOsU3IjjZ83/PWLu6IURo4=; h=From:To:Cc:Subject:Date:Message-Id:MIME-Version; b=NFkU1V03PDNrA2jl4YmKWkogC/BPM4SN6nVMQYibK67ik9L1Oo+h2rFFo5mf24QvoKk/KsPpTX10o8ETJ5ksSd96HbzKWalOMfYdq9j/OojyhMe6P7G/33F1G8JgfZ5NAn0OQI3+b3ilNVeL4E1B9NDvDiELDAmvYvmDD+H4WxU= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=triplefau.lt; spf=pass smtp.mailfrom=em510616.triplefau.lt; dkim=pass (2048-bit key) header.d=smtpservice.net header.i=@smtpservice.net header.b=GXdgFz4+; dkim=pass (2048-bit key) header.d=triplefau.lt header.i=@triplefau.lt header.b=A8AVoJGL; arc=none smtp.client-ip=158.120.84.103 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=triplefau.lt Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=em510616.triplefau.lt Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=smtpservice.net header.i=@smtpservice.net header.b="GXdgFz4+"; dkim=pass (2048-bit key) header.d=triplefau.lt header.i=@triplefau.lt header.b="A8AVoJGL" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=smtpservice.net; i=@smtpservice.net; q=dns/txt; s=a1-4; t=1737142465; h=feedback-id : x-smtpcorp-track : date : message-id : to : subject : from : reply-to : sender : list-unsubscribe : list-unsubscribe-post; bh=nqLyocNQWSekMDBFwqG+Wyvol9ScQupxsUOjyFpXlYU=; b=GXdgFz4+FsQIT26M1jNxp5c6LCfS/XfHbYzsKnHQY8ityv0caS2lQ1ltLObpDP5tHFIGo ac4lwCyA4xjA4zlp4H85DJapdaY4sY8WJKrz8qhSyqJbj07PjUkMximK8v7mul0jEACX/rr 3d1vGwxlrFTbC3vvPvpwt1TUPZEha6IyhD+2rEHGflsemzJZyr9wUE7cqBCzKbk/8su+gUx 4vG+ltBsdpsBKp0s8FHRm2DYsed2CZQm+8SrpcebzjIjycFtNFrYjRp/EWmn8KhC+jPZqsd oJUQAaJ277lNAxgWAwG1Yb6dQQOmIO8DGdFNFQIm6n3TLAH1OMCgFtDSkV+A== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=triplefau.lt; i=@triplefau.lt; q=dns/txt; s=s510616; t=1737142465; h=from : subject : to : message-id : date; bh=nqLyocNQWSekMDBFwqG+Wyvol9ScQupxsUOjyFpXlYU=; b=A8AVoJGLBpS4LMoVz7trrORe03Ivg6z8Njg8UpAS8BFG1IIJ+9Kpv4X8Wy26NvwMX7q8j j681jexeMXIChtMds3kQ1pRoCuanGprNLYr2K8w2v5dATKp1e/Uu+bJ3HUcaiwQA7m/6nUC n7McDIqwqrzmY3UPES5WbEkkWv9vYQQAXNp8mg5bLzOcVvBTcWb0CLe1JPOqVucD0dS2C5K CjWPzSp2VnHYI7Ne5OicbwxGmgiZ5MJqRB/pwZq32xERKiVyZe+w73GDvTC2w/wZwDntzwd q51U8ZKwcN3TWGFjw2PnihC1NsmoqpmzU6bTi1gm/Hg7IimCAs7OXvbOn4OQ== Received: from [10.12.239.196] (helo=localhost) by smtpcorp.com with esmtpsa (TLS1.3:ECDHE_SECP256R1__RSA_PSS_RSAE_SHA256__AES_256_GCM:256) (Exim 4.97.1-S2G) (envelope-from ) id 1tYs6k-FnQW0hPqndm-m5Sk; Fri, 17 Jan 2025 19:34:18 +0000 From: Remi Pommarel To: ath12k@lists.infradead.org, linux-wireless@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Kalle Valo , Jeff Johnson , Remi Pommarel Subject: [PATCH] wifi: ath12k: remove return for empty tx bitrate in mac_op_sta_statistics Date: Fri, 17 Jan 2025 20:30:53 +0100 Message-Id: X-Mailer: git-send-email 2.40.0 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Report-Abuse: Please forward a copy of this message, including all headers, to Feedback-ID: 510616m:510616apGKSTK:510616sFbIzu7jfk X-smtpcorp-track: 3dS10FrojzZi.bWJHkaAh8PDE.Bisp6Ab0Iwv Content-Type: text/plain; charset="utf-8" Currently in ath12k_mac_op_sta_statistics() there is the following logic: if (!arsta->txrate.legacy && !arsta->txrate.nss) return; Because ath12k_sta_statistics is used to report many info to iw wlan0 link, if it return for empty legacy and nss of arsta->txrate, then the other stats after it will not be set. To address this issue remove the return and instead invert the logic to set the txrate logic if (arsta->txrate.legacy || arsta->txrate.nss). The same was done also in both ath10k with commit 1cd6ba8ae33e ("ath10k: remove return for NL80211_STA_INFO_TX_BITRATE") and ath11k as well with commit 1d795645e1ee ("ath11k: remove return for empty tx bitrate in mac_op_sta_statistics"). Tested-on: QCN9274 hw2.0 PCI WLAN.WBE.1.3.1-00173-QCAHKSWPL_SILICONZ-1 Signed-off-by: Remi Pommarel --- drivers/net/wireless/ath/ath12k/mac.c | 29 +++++++++++++-------------- 1 file changed, 14 insertions(+), 15 deletions(-) diff --git a/drivers/net/wireless/ath/ath12k/mac.c b/drivers/net/wireless/a= th/ath12k/mac.c index d493ec812055..cbc79ec7ac47 100644 --- a/drivers/net/wireless/ath/ath12k/mac.c +++ b/drivers/net/wireless/ath/ath12k/mac.c @@ -8912,21 +8912,20 @@ static void ath12k_mac_op_sta_statistics(struct iee= e80211_hw *hw, sinfo->tx_duration =3D arsta->tx_duration; sinfo->filled |=3D BIT_ULL(NL80211_STA_INFO_TX_DURATION); =20 - if (!arsta->txrate.legacy && !arsta->txrate.nss) - return; - - if (arsta->txrate.legacy) { - sinfo->txrate.legacy =3D arsta->txrate.legacy; - } else { - sinfo->txrate.mcs =3D arsta->txrate.mcs; - sinfo->txrate.nss =3D arsta->txrate.nss; - sinfo->txrate.bw =3D arsta->txrate.bw; - sinfo->txrate.he_gi =3D arsta->txrate.he_gi; - sinfo->txrate.he_dcm =3D arsta->txrate.he_dcm; - sinfo->txrate.he_ru_alloc =3D arsta->txrate.he_ru_alloc; - } - sinfo->txrate.flags =3D arsta->txrate.flags; - sinfo->filled |=3D BIT_ULL(NL80211_STA_INFO_TX_BITRATE); + if (arsta->txrate.legacy || arsta->txrate.nss) { + if (arsta->txrate.legacy) { + sinfo->txrate.legacy =3D arsta->txrate.legacy; + } else { + sinfo->txrate.mcs =3D arsta->txrate.mcs; + sinfo->txrate.nss =3D arsta->txrate.nss; + sinfo->txrate.bw =3D arsta->txrate.bw; + sinfo->txrate.he_gi =3D arsta->txrate.he_gi; + sinfo->txrate.he_dcm =3D arsta->txrate.he_dcm; + sinfo->txrate.he_ru_alloc =3D arsta->txrate.he_ru_alloc; + } + sinfo->txrate.flags =3D arsta->txrate.flags; + sinfo->filled |=3D BIT_ULL(NL80211_STA_INFO_TX_BITRATE); + } =20 /* TODO: Use real NF instead of default one. */ sinfo->signal =3D arsta->rssi_comb + ATH12K_DEFAULT_NOISE_FLOOR; --=20 2.40.0