summaryrefslogtreecommitdiffstats
path: root/tools/perf/scripts/python/task-analyzer.py
diff options
context:
space:
mode:
authorAditya Kumar Singh <aditya.kumar.singh@oss.qualcomm.com>2025-09-24 19:13:36 +0530
committerJeff Johnson <jeff.johnson@oss.qualcomm.com>2025-10-15 16:37:54 -0700
commit6917e268c4338ceb5916c8695423597ed8c8b38e (patch)
treecc85f2fb5245e52d75b8436c29ea503b2b4656d8 /tools/perf/scripts/python/task-analyzer.py
parent43ba986e7ac7d9420e26e9a9b03c73054bc2149c (diff)
downloadlinux-6917e268c4338ceb5916c8695423597ed8c8b38e.tar.gz
linux-6917e268c4338ceb5916c8695423597ed8c8b38e.zip
wifi: ath12k: Defer vdev bring-up until CSA finalize to avoid stale beacon
Mac80211 schedules CSA finalize work twice during a channel switch: first during the reserved switch phase and again during the finalize phase. The beacon content is updated only during the second schedule, which occurs after the reserved switch completes. However, the ath12k driver attempts to bring up the VDEV during the channel switch callback (ath12k_mac_update_vif_chan()), which leads to premature installation of stale beacon templates before the updated content is available. This premature VDEV bring-up causes outdated beacon information to be broadcast, which can result in updated channel parameters during the transition. In MBSSID scenarios, this behavior is particularly problematic because the transmitting interface's beacon must be updated before non-transmitting interfaces are brought up. Failing to do so can lead to beacon mismatches across interfaces. Introduce a is_csa_in_progress flag to defer VDEV_UP until CSA finalize is complete. Set this flag during the channel switch callback when CSA is active. In bss_info_changed(), check this flag and issue VDEV_UP only after the beacon template has been updated. Ensure that in MBSSID cases, the transmitting interface is brought up first, followed by all non-transmitting interfaces. This ordering makes sure correct beacon propagation and avoids stale beacon installation during CSA transitions. Additionally, move the call to ath12k_mac_update_peer_puncturing_width() before VDEV bring-up during CSA handling. This ensures that the puncturing bitmap and bandwidth settings are applied before the VDEV is brought up. Tested-on: QCN9274 hw2.0 PCI WLAN.WBE.1.3.1-00173-QCAHKSWPL_SILICONZ-1 Fixes: 8c6faa56bfb2 ("wifi: ath12k: add MBSSID beacon support") Signed-off-by: Aditya Kumar Singh <aditya.kumar.singh@oss.qualcomm.com> Signed-off-by: Maharaja Kennadyrajan <maharaja.kennadyrajan@oss.qualcomm.com> Reviewed-by: Vasanthakumar Thiagarajan <vasanthakumar.thiagarajan@oss.qualcomm.com> Link: https://patch.msgid.link/20250924134336.888-1-maharaja.kennadyrajan@oss.qualcomm.com Signed-off-by: Jeff Johnson <jeff.johnson@oss.qualcomm.com>
Diffstat (limited to 'tools/perf/scripts/python/task-analyzer.py')
0 files changed, 0 insertions, 0 deletions