Commit f1bb514
committed
wifi: ath12k: avoid burning CPU while waiting for firmware stats
JIRA: https://issues.redhat.com/browse/RHEL-122256
commit 9a353a4
Author: Baochen Qiang <quic_bqiang@quicinc.com>
Date: Thu Jun 12 09:31:50 2025 +0800
wifi: ath12k: avoid burning CPU while waiting for firmware stats
ath12k_mac_get_fw_stats() is busy polling fw_stats_done flag while waiting
firmware finishing sending all events. This is not good as CPU is
monopolized and kept burning during the wait.
Change to the completion mechanism to fix it.
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: e367c92 ("wifi: ath12k: Request vdev stats from firmware")
Reported-by: Grégoire Stein <gregoire.s93@live.fr>
Closes: https://lore.kernel.org/ath12k/AS8P190MB120575BBB25FCE697CD7D4988763A@AS8P190MB1205.EURP190.PROD.OUTLOOK.COM/
Signed-off-by: Baochen Qiang <quic_bqiang@quicinc.com>
Tested-by: Grégoire Stein <gregoire.s93@live.fr>
Link: https://patch.msgid.link/20250612-ath12k-fw-fixes-v1-2-12f594f3b857@quicinc.com
Signed-off-by: Jeff Johnson <jeff.johnson@oss.qualcomm.com>
Signed-off-by: Jose Ignacio Tornos Martinez <jtornosm@redhat.com>1 parent bde37c3 commit f1bb514
4 files changed
+14
-24
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1216 | 1216 | | |
1217 | 1217 | | |
1218 | 1218 | | |
| 1219 | + | |
1219 | 1220 | | |
1220 | 1221 | | |
1221 | 1222 | | |
| |||
1228 | 1229 | | |
1229 | 1230 | | |
1230 | 1231 | | |
1231 | | - | |
1232 | 1232 | | |
1233 | 1233 | | |
1234 | 1234 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
632 | 632 | | |
633 | 633 | | |
634 | 634 | | |
635 | | - | |
636 | 635 | | |
637 | 636 | | |
638 | 637 | | |
| |||
812 | 811 | | |
813 | 812 | | |
814 | 813 | | |
| 814 | + | |
815 | 815 | | |
816 | 816 | | |
817 | 817 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
4360 | 4360 | | |
4361 | 4361 | | |
4362 | 4362 | | |
4363 | | - | |
| 4363 | + | |
4364 | 4364 | | |
4365 | 4365 | | |
4366 | 4366 | | |
4367 | 4367 | | |
4368 | 4368 | | |
4369 | 4369 | | |
4370 | 4370 | | |
4371 | | - | |
4372 | | - | |
4373 | | - | |
4374 | | - | |
4375 | | - | |
4376 | | - | |
4377 | 4371 | | |
4378 | 4372 | | |
4379 | 4373 | | |
| 4374 | + | |
4380 | 4375 | | |
4381 | 4376 | | |
4382 | 4377 | | |
4383 | | - | |
4384 | 4378 | | |
4385 | 4379 | | |
4386 | 4380 | | |
| |||
4391 | 4385 | | |
4392 | 4386 | | |
4393 | 4387 | | |
4394 | | - | |
4395 | 4388 | | |
4396 | 4389 | | |
4397 | 4390 | | |
| |||
4400 | 4393 | | |
4401 | 4394 | | |
4402 | 4395 | | |
4403 | | - | |
| 4396 | + | |
4404 | 4397 | | |
4405 | 4398 | | |
4406 | | - | |
4407 | | - | |
4408 | | - | |
4409 | | - | |
4410 | | - | |
4411 | | - | |
4412 | | - | |
4413 | | - | |
4414 | | - | |
| 4399 | + | |
| 4400 | + | |
| 4401 | + | |
| 4402 | + | |
4415 | 4403 | | |
| 4404 | + | |
4416 | 4405 | | |
4417 | 4406 | | |
4418 | 4407 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
8192 | 8192 | | |
8193 | 8193 | | |
8194 | 8194 | | |
8195 | | - | |
| 8195 | + | |
8196 | 8196 | | |
8197 | 8197 | | |
8198 | 8198 | | |
8199 | 8199 | | |
| 8200 | + | |
8200 | 8201 | | |
8201 | 8202 | | |
8202 | 8203 | | |
| |||
8211 | 8212 | | |
8212 | 8213 | | |
8213 | 8214 | | |
8214 | | - | |
| 8215 | + | |
8215 | 8216 | | |
8216 | 8217 | | |
8217 | 8218 | | |
| |||
8249 | 8250 | | |
8250 | 8251 | | |
8251 | 8252 | | |
8252 | | - | |
| 8253 | + | |
8253 | 8254 | | |
8254 | 8255 | | |
8255 | 8256 | | |
| |||
0 commit comments