diff options
author | 2025-06-12 09:31:52 +0800 | |
---|---|---|
committer | 2025-06-17 16:28:35 -0700 | |
commit | ad5e9178cec589bf3af589dc43e638e5a5bf56fa (patch) | |
tree | e3ab7792e1b01f4d359afa396074561af5bfc17b /tools/perf/scripts/python/export-to-postgresql.py | |
parent | wifi: ath12k: don't use static variables in ath12k_wmi_fw_stats_process() (diff) | |
download | wireguard-linux-ad5e9178cec589bf3af589dc43e638e5a5bf56fa.tar.xz wireguard-linux-ad5e9178cec589bf3af589dc43e638e5a5bf56fa.zip |
wifi: ath12k: don't wait when there is no vdev started
For WMI_REQUEST_VDEV_STAT request, firmware might split response into
multiple events dut to buffer limit, hence currently in
ath12k_wmi_fw_stats_process() host waits until all events received. In
case there is no vdev started, this results in that below condition
would never get satisfied
((++ar->fw_stats.num_vdev_recvd) == total_vdevs_started)
consequently the requestor would be blocked until time out.
The same applies to WMI_REQUEST_BCN_STAT request as well due to:
((++ar->fw_stats.num_bcn_recvd) == ar->num_started_vdevs)
Change to check the number of started vdev first: if it is zero, finish
directly; if not, follow the old way.
Tested-on: WCN7850 hw2.0 PCI WLAN.HMT.1.1.c5-00284.1-QCAHMTSWPL_V1.0_V2.0_SILICONZ-3
Tested-on: QCN9274 hw2.0 WLAN.WBE.1.5-01651-QCAHKSWPL_SILICONZ-1
Fixes: e367c924768b ("wifi: ath12k: Request vdev stats from firmware")
Signed-off-by: Baochen Qiang <quic_bqiang@quicinc.com>
Link: https://patch.msgid.link/20250612-ath12k-fw-fixes-v1-4-12f594f3b857@quicinc.com
Signed-off-by: Jeff Johnson <jeff.johnson@oss.qualcomm.com>
Diffstat (limited to 'tools/perf/scripts/python/export-to-postgresql.py')
0 files changed, 0 insertions, 0 deletions