[PATCH ath-current] wifi: ath12k: fix incorrect channel survey index
Yingying Tang
yingying.tang at oss.qualcomm.com
Mon Feb 9 18:44:40 PST 2026
A wrong channel survey index was introduced in
ath12k_mac_op_get_survey by [1], which can cause ACS to fail.
The index is decremented before being used, resulting in an
incorrect value when accessing the channel survey data.
Fix the index handling to ensure the correct survey entry is
used and avoid ACS failures.
Tested-on: WCN7850 hw2.0 PCI WLAN.HMT.1.1.c5-00302-QCAHMTSWPL_V1.0_V2.0_SILICONZ-1.115823.3
Fixes: 4f242b1d6996 ("wifi: ath12k: support get_survey mac op for single wiphy") # [1]
Signed-off-by: Yingying Tang <yingying.tang at oss.qualcomm.com>
---
drivers/net/wireless/ath/ath12k/mac.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/drivers/net/wireless/ath/ath12k/mac.c b/drivers/net/wireless/ath/ath12k/mac.c
index e0e49f782bf8..86ce7d87b5a5 100644
--- a/drivers/net/wireless/ath/ath12k/mac.c
+++ b/drivers/net/wireless/ath/ath12k/mac.c
@@ -13086,6 +13086,7 @@ static int ath12k_mac_op_get_survey(struct ieee80211_hw *hw, int idx,
struct ath12k *ar;
struct ieee80211_supported_band *sband;
struct survey_info *ar_survey;
+ int orig_idx = idx;
lockdep_assert_wiphy(hw->wiphy);
@@ -13120,7 +13121,7 @@ static int ath12k_mac_op_get_survey(struct ieee80211_hw *hw, int idx,
return -ENOENT;
}
- ar_survey = &ar->survey[idx];
+ ar_survey = &ar->survey[orig_idx];
ath12k_mac_update_bss_chan_survey(ar, &sband->channels[idx]);
--
base-commit: 1cac38910ecb881b09f61f57545a771bbe57ba68
More information about the ath12k
mailing list