mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH ath-next v2 0/5] wifi: ath11k: firmware crash recovery fixes
@ 2026-10-18 21:01 Julius Bairaktaris
  2026-10-18 21:01 ` [PATCH ath-next v2 1/5] wifi: ath11k: initialise the CE descriptor waitqueue once per device Julius Bairaktaris
                   ` (5 more replies)
  0 siblings, 6 replies; 9+ messages in thread
From: Julius Bairaktaris @ 2026-10-18 21:01 UTC (permalink / raw)
  To: Jeff Johnson
  Cc: ath11k, linux-wireless, linux-kernel, Baochen Qiang,
	Vasanthakumar Thiagarajan, Rameshkumar Sundaram, P Praneesh,
	Kalle Valo, Muhammad Usama Anjum, John Crispin, Sriram R

Firmware crash recovery on IPQ8074 resets a waitqueue under a sleeping
WMI sender (1/5), frees radios and ring memory still in use when it
fails (2/5, 3/5), sends on rings it has not rebuilt yet (4/5), and lets
cfg80211 commands crash the restarting firmware again (5/5). Patches 1
and 4 are v2 of the series linked below; 2, 3 and 5 are new.

Tested on IPQ8074 (WLAN.HK.2.9.0.1-02146) with the firmware assert from
debugfs. Without the series, every recovery reported list_del corruption
on the CE waitqueue (6 of 6), an RTS threshold loop during recovery
faulted in ath11k_hal_srng_access_begin() (3 of 3), and after a failed
recovery the next crash faulted in sta_info_hash_lookup() and rmmod in
ath11k_dp_rx_pdev_free() (1 of 1 each). With the series, 12 recoveries
(5 with the RTS loop, 2 with beacon updates, 2 after a failed recovery,
3 idle) showed no fault or list corruption, a failed recovery recovered
on the next crash, and rmmod and reload worked.

v2:
- 1/5: name ath11k_connect_pdev_htc_service() and ath11k_wmi_connect()
  (Baochen). Add Reviewed-by.
- 4/5: fix the recovery ordering instead of testing srng fields in the
  CE layer (Baochen). Drop the ath11k_ce_completed_send_next() hunk.
  Fixes: the first driver version.
- 2/5, 3/5, 5/5: new.

v1: https://lore.kernel.org/r/20260805192129.61113-1-julius@bairaktaris.de

Julius Bairaktaris (5):
  wifi: ath11k: initialise the CE descriptor waitqueue once per device
  wifi: ath11k: keep the radios when a firmware recovery fails
  wifi: ath11k: keep the srng allocations when a firmware recovery fails
  wifi: ath11k: clear CRASH_FLUSH only after recovery rebuilds the rings
  wifi: ath11k: hold back WMI commands while the firmware restarts

 drivers/net/wireless/ath/ath11k/core.c | 21 ++++++++++++---------
 drivers/net/wireless/ath/ath11k/wmi.c  |  5 ++++-
 2 files changed, 16 insertions(+), 10 deletions(-)


base-commit: cd026e68fdbf88b9cc522b76c7a9d92c9a41f709
-- 
2.53.0


^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2026-11-06  0:59 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-10-18 21:01 [PATCH ath-next v2 0/5] wifi: ath11k: firmware crash recovery fixes Julius Bairaktaris
2026-10-18 21:01 ` [PATCH ath-next v2 1/5] wifi: ath11k: initialise the CE descriptor waitqueue once per device Julius Bairaktaris
2026-10-18 21:01 ` [PATCH ath-next v2 2/5] wifi: ath11k: keep the radios when a firmware recovery fails Julius Bairaktaris
2026-10-18 21:01 ` [PATCH ath-next v2 3/5] wifi: ath11k: keep the srng allocations " Julius Bairaktaris
2026-10-18 21:01 ` [PATCH ath-next v2 4/5] wifi: ath11k: clear CRASH_FLUSH only after recovery rebuilds the rings Julius Bairaktaris
2026-10-18 21:01 ` [PATCH ath-next v2 5/5] wifi: ath11k: hold back WMI commands while the firmware restarts Julius Bairaktaris
2026-11-01 13:15 ` [PATCH ath-next v2 0/5] wifi: ath11k: firmware crash recovery fixes Florian Maurer
2026-11-01 16:47   ` Julius Bairaktaris
2026-11-06  0:58     ` Florian Maurer

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®