Flaky wifi on Poco F1
Hi,
I'm having some trouble with the ath10k in my Xiaomi Pocophone F1, running pmOS Edge. I'm experiencing regular wifi crashes. The wiki page says I can expect the wifi to be stable on 2.4Ghz, but unfortunately I'm still seeing issues. Every once in a while the wifi becomes completely unavailable, which I then recover by connecting the phone to my laptop via USB and running (i can only recover via reboot; maybe there's a another way, but i couldn't figure it out).rfkill block
/ rfkill unblock
I'm not exactly sure if the logs contain any sensitive data, so I've edited them a bit:
Log output
[Feb 04 18:59:01] kern kernel: ------------[ cut here ]------------
[Feb 04 18:59:01] kern kernel: Unbalanced enable for IRQ 195
[Feb 04 18:59:01] kern kernel: WARNING: CPU: 1 PID: 10250 at kernel/irq/manage.c:789 __enable_irq+0x4c/0x7c
[Feb 04 18:59:01] kern kernel: rfkill qcom_q6v5_pas qcom_wdt slim_qcom_ngd_ctrl qcom_pil_info qcom_q6v5 icc_bwmon qcom_sysmon qcom_common qcom_glink_smem edt_ft5x06 qcom_fg qcom_pmi8998_charger i2c_qcom_geni gpi
[Feb 04 18:59:01] kern kernel: CPU: 1 PID: 10250 Comm: kworker/1:1 Tainted: G W 6.6.3-sdm845 #3-postmarketos-qcom-sdm845
[Feb 04 18:59:01] kern kernel: Hardware name: Xiaomi Pocophone F1 (EBBG) (DT)
[Feb 04 18:59:01] kern kernel: Workqueue: events_freezable ieee80211_restart_work [mac80211]
[Feb 04 18:59:01] kern kernel: pstate: 604000c5 (nZCv daIF +PAN -UAO -TCO -DIT -SSBS BTYPE=--)
[Feb 04 18:59:01] kern kernel: pc : __enable_irq+0x4c/0x7c
[Feb 04 18:59:01] kern kernel: lr : __enable_irq+0x4c/0x7c
[Feb 04 18:59:01] kern kernel: sp : 1010101010101010
[Feb 04 18:59:01] kern kernel: x29: 1010101010101010 x28: 1010101010101010 x27: 1010101010101010
[Feb 04 18:59:01] kern kernel: x26: 1010101010101010 x25: 1010101010101010 x24: 1010101010101010
[Feb 04 18:59:01] kern kernel: x23: 1010101010101010 x22: 1010101010101010 x21: 1010101010101010
[Feb 04 18:59:01] kern kernel: x20: 1010101010101010 x19: 1010101010101010 x18: 1010101010101010
[Feb 04 18:59:01] kern kernel: x17: 1010101010101010 x16: 1010101010101010 x15: 1010101010101010
[Feb 04 18:59:01] kern kernel: x14: 1010101010101010 x13: 1010101010101010 x12: 1010101010101010
[Feb 04 18:59:01] kern kernel: x11: 1010101010101010 x10: 1010101010101010 x9 : 1010101010101010
[Feb 04 18:59:01] kern kernel: x8 : 1010101010101010 x7 : 1010101010101010 x6 : 1010101010101010
[Feb 04 18:59:01] kern kernel: x5 : 1010101010101010 x4 : 1010101010101010 x3 : 1010101010101010
[Feb 04 18:59:01] kern kernel: x2 : 1010101010101010 x1 : 1010101010101010 x0 : 1010101010101010
[Feb 04 18:59:01] kern kernel: Call trace:
[Feb 04 18:59:01] kern kernel: __enable_irq+0x4c/0x7c
[Feb 04 18:59:01] kern kernel: enable_irq+0x50/0xa8
[Feb 04 18:59:01] kern kernel: ath10k_snoc_hif_start+0x54/0x124 [ath10k_snoc]
[Feb 04 18:59:01] kern kernel: ath10k_core_start+0x370/0x12d8 [ath10k_core]
[Feb 04 18:59:01] kern kernel: ath10k_start+0x108/0x8fc [ath10k_core]
[Feb 04 18:59:01] kern kernel: drv_start+0x34/0x58 [mac80211]
[Feb 04 18:59:01] kern kernel: ieee80211_reconfig+0xcc/0xf60 [mac80211]
[Feb 04 18:59:01] kern kernel: ieee80211_restart_work+0x100/0x16c [mac80211]
[Feb 04 18:59:01] kern kernel: process_one_work+0x138/0x248
[Feb 04 18:59:01] kern kernel: worker_thread+0x320/0x438
[Feb 04 18:59:01] kern kernel: kthread+0x110/0x114
[Feb 04 18:59:01] kern kernel: ret_from_fork+0x10/0x20
[Feb 04 18:59:01] kern kernel: ---[ end trace 0000000000000000 ]---
[Feb 04 18:59:01] kern kernel: ath10k_snoc 18800000.wifi: device successfully recovered
[Feb 04 18:59:04] kern kernel: ath10k_snoc 18800000.wifi: failed to install key for vdev 0 peer aa:aa:aa:aa:aa:aa: -110
[Feb 04 18:59:04] kern kernel: wlan0: failed to remove key (0, aa:aa:aa:aa:aa:aa) from hardware (-110)
[Feb 04 18:59:06] kern kernel: wlan0: authenticate with bb:bb:bb:bb:bb:bb
[Feb 04 18:59:06] kern kernel: wlan0: 80 MHz not supported, disabling VHT
[Feb 04 18:59:06] kern kernel: wlan0: send auth to bb:bb:bb:bb:bb:bb (try 1/3)
[Feb 04 18:59:06] kern kernel: wlan0: authenticated
[Feb 04 18:59:06] kern kernel: wlan0: associate with bb:bb:bb:bb:bb:bb (try 1/3)
[Feb 04 18:59:06] kern kernel: wlan0: RX AssocResp from bb:bb:bb:bb:bb:bb (capab=0x1031 status=0 aid=3)
[Feb 04 18:59:06] kern kernel: wlan0: associated
[Feb 04 18:59:06] kern kernel: wlan0: Limiting TX power to 20 (20 - 0) dBm as advertised by bb:bb:bb:bb:bb:bb
[Feb 04 18:59:42] kern kernel: ath10k_snoc 18800000.wifi: failed to install key for vdev 0 peer bb:bb:bb:bb:bb:bb: -110
[Feb 04 18:59:42] kern kernel: wlan0: failed to remove key (2, ff:ff:ff:ff:ff:ff) from hardware (-110)
[Feb 04 18:59:42] kern kernel: wlan0: disconnect from AP bb:bb:bb:bb:bb:bb for new auth to aa:aa:aa:aa:aa:aa
[Feb 04 18:59:45] kern kernel: ath10k_snoc 18800000.wifi: failed to install key for vdev 0 peer bb:bb:bb:bb:bb:bb: -110
[Feb 04 18:59:45] kern kernel: wlan0: failed to remove key (0, bb:bb:bb:bb:bb:bb) from hardware (-110)
[Feb 04 18:59:45] kern kernel: wlan0: authenticate with aa:aa:aa:aa:aa:aa
[Feb 04 18:59:45] kern kernel: wlan0: 80 MHz not supported, disabling VHT
[Feb 04 18:59:45] kern kernel: wlan0: send auth to aa:aa:aa:aa:aa:aa (try 1/3)
[Feb 04 18:59:45] kern kernel: wlan0: authenticated
[Feb 04 18:59:45] kern kernel: wlan0: associate with aa:aa:aa:aa:aa:aa (try 1/3)
[Feb 04 18:59:45] kern kernel: wlan0: RX ReassocResp from aa:aa:aa:aa:aa:aa (capab=0x1031 status=0 aid=138)
[Feb 04 18:59:45] kern kernel: wlan0: associated
[Feb 04 18:59:45] kern kernel: wlan0: Limiting TX power to 20 (20 - 0) dBm as advertised by aa:aa:aa:aa:aa:aa
[Feb 04 19:10:07] kern kernel: ath10k_snoc 18800000.wifi: failed to install key for vdev 0 peer aa:aa:aa:aa:aa:aa: -110
[Feb 04 19:10:07] kern kernel: wlan0: failed to remove key (1, ff:ff:ff:ff:ff:ff) from hardware (-110)
[Feb 04 19:20:07] kern kernel: ath10k_snoc 18800000.wifi: failed to install key for vdev 0 peer aa:aa:aa:aa:aa:aa: -110
[Feb 04 19:20:07] kern kernel: wlan0: failed to remove key (2, ff:ff:ff:ff:ff:ff) from hardware (-110)
[Feb 04 19:30:07] kern kernel: ath10k_snoc 18800000.wifi: failed to install key for vdev 0 peer aa:aa:aa:aa:aa:aa: -110
[Feb 04 19:30:07] kern kernel: wlan0: failed to remove key (1, ff:ff:ff:ff:ff:ff) from hardware (-110)
[Feb 04 19:40:07] kern kernel: ath10k_snoc 18800000.wifi: failed to install key for vdev 0 peer aa:aa:aa:aa:aa:aa: -110
[Feb 04 19:40:07] kern kernel: wlan0: failed to remove key (2, ff:ff:ff:ff:ff:ff) from hardware (-110)
[Feb 04 19:50:07] kern kernel: ath10k_snoc 18800000.wifi: failed to install key for vdev 0 peer aa:aa:aa:aa:aa:aa: -110
[Feb 04 19:50:07] kern kernel: wlan0: failed to remove key (1, ff:ff:ff:ff:ff:ff) from hardware (-110)
More log output, this is what the log looks like for a sustained period of time once the firmware has crashed:
Log output
[Apr 08 21:19:08] kern kernel: ath10k_snoc 18800000.wifi: failed to start hw scan: -108
[Apr 08 21:19:09] kern kernel: ath10k_snoc 18800000.wifi: failed to start hw scan: -108
[Apr 08 21:19:10] kern kernel: ath10k_snoc 18800000.wifi: failed to start hw scan: -108
[Apr 08 21:19:11] kern kernel: ath10k_snoc 18800000.wifi: failed to start hw scan: -108
[Apr 08 21:19:12] kern kernel: ath10k_snoc 18800000.wifi: failed to start hw scan: -108
[Apr 08 21:19:13] kern kernel: ath10k_snoc 18800000.wifi: failed to start hw scan: -108
[Apr 08 21:19:14] kern kernel: ath10k_snoc 18800000.wifi: failed to start hw scan: -108
[Apr 08 21:19:15] kern kernel: ath10k_snoc 18800000.wifi: failed to start hw scan: -108
[Apr 08 21:19:16] kern kernel: ath10k_snoc 18800000.wifi: failed to start hw scan: -108
[Apr 08 21:19:17] kern kernel: ath10k_snoc 18800000.wifi: failed to start hw scan: -108
[Apr 08 21:19:18] kern kernel: ath10k_snoc 18800000.wifi: failed to start hw scan: -108
[Apr 08 21:19:19] kern kernel: ath10k_snoc 18800000.wifi: failed to start hw scan: -108
[Apr 08 21:19:20] kern kernel: ath10k_snoc 18800000.wifi: failed to start hw scan: -108
[Apr 08 21:19:20] kern kernel: ath10k_snoc 18800000.wifi: failed to start hw scan: -108
[Apr 08 21:19:21] kern kernel: ath10k_snoc 18800000.wifi: failed to start hw scan: -108
[Apr 08 21:19:22] kern kernel: ath10k_snoc 18800000.wifi: failed to start hw scan: -108
[Apr 08 21:19:23] kern kernel: ath10k_snoc 18800000.wifi: failed to start hw scan: -108
[Apr 08 21:19:24] kern kernel: ath10k_snoc 18800000.wifi: failed to start hw scan: -108
[Apr 08 21:19:25] kern kernel: ath10k_snoc 18800000.wifi: failed to start hw scan: -108
[Apr 08 21:19:25] kern kernel: ath10k_snoc 18800000.wifi: failed to transmit packet, dropping: -108
[Apr 08 21:19:25] kern kernel: ath10k_snoc 18800000.wifi: failed to submit frame: -108
[Apr 08 21:19:25] kern kernel: ath10k_snoc 18800000.wifi: failed to push frame: -108
[Apr 08 21:19:26] kern kernel: ath10k_snoc 18800000.wifi: failed to start hw scan: -108
[Apr 08 21:19:26] kern kernel: ath10k_snoc 18800000.wifi: failed to transmit packet, dropping: -108
[Apr 08 21:19:26] kern kernel: ath10k_snoc 18800000.wifi: failed to submit frame: -108
[Apr 08 21:19:26] kern kernel: ath10k_snoc 18800000.wifi: failed to push frame: -108
[Apr 08 21:19:27] kern kernel: ath10k_snoc 18800000.wifi: failed to start hw scan: -108
[Apr 08 21:19:27] kern kernel: ath10k_snoc 18800000.wifi: failed to transmit packet, dropping: -108
The mac addresses (except for ff:ff:ff:ff:ff:ff
) are searched-and-replaced, and the register contents (?) as well. The last lines show failed to install key
/ failed to remove key
happening every 10 minutes. The unbalanced enable for IRQ
crash at the start happens more rarely.
Some more system info
# uname -a
Linux compost 6.6.3-sdm845 #3-postmarketos-qcom-sdm845 SMP PREEMPT Thu Dec 7 23:00:19 UTC aarch64 Linux
# apk list --installed | grep linux-firmware
linux-firmware-ath10k-20231211-r0 aarch64 {linux-firmware} (custom) [installed]
linux-firmware-qca-20231111-r2 aarch64 {linux-firmware} (custom) [installed]
linux-firmware-qcom-20231211-r0 aarch64 {linux-firmware} (custom) [installed]
Any idea what's going on? Anything I can do about it?
Thanks for any help and of course all the effort you put into this! Very appreciated