Baochen Qiang <quic_bqiang@xxxxxxxxxxx> writes: > Currently ath11k_debugfs_fw_stats_process() is using static variables to count > firmware stat events. Taking num_vdev as an example, if for whatever reason ( > say ar->num_started_vdevs is 0 or firmware bug etc.) the following condition > > (++num_vdev) == total_vdevs_started > > is not met, is_end is not set thus num_vdev won't be cleared. Next time when > firmware stats is requested again, even if everything is working fine, we will > fail due to the condition above will never be satisfied. > > The same applies to num_bcn as well. > > Change to use non-static counters so that we have a chance to clear them each > time firmware stats is requested. Currently only ath11k_fw_stats_request() and > ath11k_debugfs_fw_stats_request() are requesting firmware stats, so clear > counters there. > > Tested-on: WCN6855 hw2.0 PCI WLAN.HSP.1.1-03125-QCAHSPSWPL_V1_V2_SILICONZ_LITE-3.6510.37 > > Fixes: da3a9d3c1576 ("ath11k: refactor debugfs code into debugfs.c") > Signed-off-by: Baochen Qiang <quic_bqiang@xxxxxxxxxxx> Yikes, good catch! Acked-by: Kalle Valo <kvalo@xxxxxxxxxx> -- https://patchwork.kernel.org/project/linux-wireless/list/ https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches