Bug 206395

Summary: iwlwifi: 8260: FW error in GEO_TX_POWER_LIMIT triggered from iwl_mvm_mac_start
Product: Drivers Reporter: David Strobach (lalochcz)
Component: network-wireless-intelAssignee: Default virtual assignee for network-wireless-intel (drivers_network-wireless-intel)
Status: NEW ---    
Severity: normal CC: belegdol, cribari, ganguin, janek+kernel, joanbrugueram, kernel, mail.alex.voronin, me, noodles, pbrobinson, pedretti.fabio, radek, ravenexp, sanal.s.prasad, spweb, to.eivind
Priority: P1    
Hardware: x86-64   
OS: Linux   
Kernel Version: 5.5.1 Subsystem:
Regression: No Bisected commit-id:
Attachments: Relevant boot log output
kernel bootlog iwlwifi firmware crash
5.5.13_logs_and_system_info
iwlwifi error log on kernel 5.5.11 (openSUSE TW)

Description David Strobach 2020-02-03 14:59:02 UTC
Kernel: Linux version 5.5.1-arch1-1 (linux@archlinux) (gcc version 9.2.0 (GCC)) #1 SMP PREEMPT Sat, 01 Feb 2020 16:38:40 +0000

Device:
01:00.0 Network controller [0280]: Intel Corporation Wireless 8260 [8086:24f3] (rev 3a)
        Subsystem: Intel Corporation Wireless 8260 [8086:8110]
        Flags: bus master, fast devsel, latency 0, IRQ 131
        Memory at ef400000 (64-bit, non-prefetchable) [size=8K]
        Capabilities: [c8] Power Management version 3
        Capabilities: [d0] MSI: Enable+ Count=1/1 Maskable- 64bit+
        Capabilities: [40] Express Endpoint, MSI 00
        Capabilities: [100] Advanced Error Reporting
        Capabilities: [140] Device Serial Number a0-c5-89-ff-ff-7d-f5-f5
        Capabilities: [14c] Latency Tolerance Reporting
        Capabilities: [154] L1 PM Substates
        Kernel driver in use: iwlwifi
        Kernel modules: iwlwifi

Starting with Linux v5.5 my Intel AC 8260 fails to start. See the attached log excerpt for details.
Comment 1 David Strobach 2020-02-03 15:14:25 UTC
Created attachment 287095 [details]
Relevant boot log output
Comment 2 ganguin 2020-02-13 21:34:30 UTC
Same error for me, it seems to be is related to Bug #204151, there is another call to GEO_TX_POWER_LIMIT not guarded by iwl_sar_geo_support() in function iwl_mvm_sar_geo_init in drivers/net/wireless/intel/iwlwifi/mvm/fw.c.

The error happens for kernels 5.5.0 to 5.5.3
Comment 3 ganguin 2020-02-13 22:08:00 UTC
omitting the call to iwl_mvm_sar_geo_init makes my wifi work again without any errors

diff --git a/drivers/net/wireless/intel/iwlwifi/mvm/fw.c b/drivers/net/wireless/intel/iwlwifi/mvm/fw.c
index c09624d8d..0915c5852 100644
--- a/drivers/net/wireless/intel/iwlwifi/mvm/fw.c
+++ b/drivers/net/wireless/intel/iwlwifi/mvm/fw.c
@@ -1215,7 +1215,8 @@ int iwl_mvm_up(struct iwl_mvm *mvm)
 
 	ret = iwl_mvm_sar_init(mvm);
 	if (ret == 0) {
-		ret = iwl_mvm_sar_geo_init(mvm);
+		if (iwl_sar_geo_support(&mvm->fwrt))
+			ret = iwl_mvm_sar_geo_init(mvm);
 	} else if (ret > 0 && !iwl_sar_get_wgds_table(&mvm->fwrt)) {
 		/*
 		 * If basic SAR is not available, we check for WGDS,
Comment 4 David Strobach 2020-02-15 18:37:24 UTC
I can confirm that the above patch fixes the issue. Thanks @ganguin@gmail.com!
Comment 5 Sergey Kvachonok 2020-02-16 21:04:42 UTC
Still present in 5.5.4
Comment 6 Francisco Cribari 2020-02-22 13:15:30 UTC
The bug is present in kernel 5.5.5 (Arch Linux).
Comment 7 joanbrugueram 2020-02-22 22:11:43 UTC
At first sight it seems like this bug and bug #206479 are duplicates. I see the same stack trace and error code for both, and the patch by ganguin will likely have the same effect as the patch I published in the other bug.
Comment 8 Francisco Cribari 2020-02-26 13:19:51 UTC
The bug is still present in kernel 5.5.6 (Arch).
Comment 9 Francisco Cribari 2020-03-01 18:09:12 UTC
The bug is still present in kernel 5.5.7 (Arch).
Comment 10 to.eivind 2020-03-02 22:34:17 UTC
I am also seeing this on kernel 5.5.7.

See attached boot log.
Comment 11 to.eivind 2020-03-02 22:35:04 UTC
Created attachment 287767 [details]
kernel bootlog iwlwifi firmware crash
Comment 12 Andre Manoel 2020-03-03 01:42:04 UTC
I wonder if there's any plan of integrating the patch into upstream? I'm afraid that kernel developers ignore the issue, since the bug is present only for a small fraction of users :(
Comment 13 Francisco Cribari 2020-03-06 13:49:00 UTC
The bug is still present in kernel 5.5.8 (Arch Linux).
Comment 14 Abdulkadir Furkan Şanlı 2020-03-11 10:37:33 UTC
Confirming (In reply to joanbrugueram from comment #7)
> At first sight it seems like this bug and bug #206479 are duplicates. I see
> the same stack trace and error code for both, and the patch by ganguin will
> likely have the same effect as the patch I published in the other bug.

The bug is present in all current Arch kernels (5.5.8). I have been using the patch from that bug report for nearly a month and my 8260 correctly initializes and no errors so far.
Comment 15 Sergey Kvachonok 2020-03-11 11:00:34 UTC
It looks like this bug is specific to a certain combination of Intel WiFi hardware model (8260) AND system firmware ACPI tables in some laptops/motherboards, which very few users have.

Given that no big distro maintainers have complained to the devs so far, it looks
like this issue is here to stay...
Comment 16 David Strobach 2020-03-11 11:15:14 UTC
(In reply to Sergey Kvachonok from comment #15)
> Given that no big distro maintainers have complained to the devs so far, it
> looks like this issue is here to stay...

The issue most probably wan't go away until someone submits a patch to the linux-wireless mailing list.
Comment 17 Sav0k 2020-03-13 20:22:41 UTC
The same problem on my Asus Zenbook UX330UA.
Network controller: Intel Corporation Wireless 8260 (rev 3a). 
Manjaro KDE, kernel 5.5. 
With other kernels WiFi work as expected. 

Logs: [logFile](https://www.dropbox.com/s/oimvrgtsl1rq083/logs.txt?dl=0)
Comment 18 Francisco Cribari 2020-03-14 19:30:39 UTC
The bug is still present in kernel 5.5.9 (Arch Linux).
Comment 19 Jonathan McDowell 2020-03-15 10:15:57 UTC
FWIW I've posted a patch to linux-wireless/the Intel folk at https://lore.kernel.org/linux-wireless/20200314105700.GM311@earth.li/T/#u that's working for me.
Comment 20 Francisco Cribari 2020-03-20 02:51:58 UTC
The bug is still present in kernel 5.5.10 (Arch).
Comment 22 Sav0k 2020-03-24 20:18:59 UTC
WiFi still not working in version 5.5.11-1 (Arch)
Comment 23 Sav0k 2020-03-28 19:00:59 UTC
WiFi still not working in version 5.5.13-1 (Arch)
Comment 24 joanbrugueram 2020-03-28 20:04:14 UTC
@Sav0k: I see the upstream patch from Golan Ben Ami is included in both Arch's 5.5.11-1 and 5.5.13-1. Is the error message in the log still the same? An new log would be useful.
Comment 25 Sav0k 2020-03-28 20:17:13 UTC
Created attachment 288111 [details]
5.5.13_logs_and_system_info
Comment 26 Sav0k 2020-03-28 20:19:06 UTC
(In reply to joanbrugueram from comment #24)
> @Sav0k: I see the upstream patch from Golan Ben Ami is included in both
> Arch's 5.5.11-1 and 5.5.13-1. Is the error message in the log still the
> same? An new log would be useful.

As for me looks like the same as before. 
I attached new logs and information about the system.
Comment 27 joanbrugueram 2020-03-28 20:33:59 UTC
It looks like your are using Manjaro, and they build the kernel by themselves instead of using the same one as Arch. And for some reason, this single patch wasn't included in their build, unlike all other patches.

References:

Arch kernel patches: https://git.archlinux.org/linux.git/log/?h=v5.5.13-arch1
Manjaro kernel patches: https://gitlab.manjaro.org/packages/core/linux55/-/blob/17ade6d553eee8f9abe7edd50591c007c6b35ffa/PKGBUILD

So, unfortunately it's still broken in your distro, but Gol Ami's fix is still valid and should eventually land there.
Comment 28 Sav0k 2020-03-28 20:37:19 UTC
(In reply to joanbrugueram from comment #27)
> It looks like your are using Manjaro, and they build the kernel by
> themselves instead of using the same one as Arch. And for some reason, this
> single patch wasn't included in their build, unlike all other patches.
> 
> References:
> 
> Arch kernel patches: https://git.archlinux.org/linux.git/log/?h=v5.5.13-arch1
> Manjaro kernel patches:
> https://gitlab.manjaro.org/packages/core/linux55/-/blob/
> 17ade6d553eee8f9abe7edd50591c007c6b35ffa/PKGBUILD
> 
> So, unfortunately it's still broken in your distro, but Gol Ami's fix is
> still valid and should eventually land there.

I'm sorry, I didn't know about this. Thank you very much for the detailed information!
Comment 29 Andre Manoel 2020-03-28 23:04:57 UTC
I can confirm that on a Asus UX330UA (previously affected), kernel 5.5.13-1 works fine. Thanks.

I think this can be closed.
Comment 30 Sergey Kvachonok 2020-03-29 10:06:38 UTC
(In reply to Andre Manoel from comment #29)

> I can confirm that on a Asus UX330UA (previously affected), kernel 5.5.13-1
> works fine. Thanks.
> 
> I think this can be closed.

5.5.13 is still broken on my UX330UA. The is the kernel bug tracker, not your distro's bug tracker.
Comment 31 to.eivind 2020-03-29 11:33:34 UTC
(In reply to to.eivind from comment #11)
> Created attachment 287767 [details]
> kernel bootlog iwlwifi firmware crash

Can confirm 5.5.13-1 from Arch (which includes the patch) is booting with working wifi on my Asus UX330.
Comment 32 Sébastien Poher 2020-04-01 21:06:08 UTC
I encounter the same issue on latest (nov 2019) Dell XPS 3790 running openSUSE Tumbleweed and kernel 5.5.11.

# ethtool -i wlp2s0 | grep firmware
firmware-version: 48.4fa0041f.0

lspci -s 02:00.0 -vv
02:00.0 Network controller: Intel Corporation Wi-Fi 6 AX200 (rev 1a)
	Subsystem: Bigfoot Networks, Inc. Device 1653
	Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
	Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
	Latency: 0
	Interrupt: pin A routed to IRQ 18
	Region 0: Memory at 9e200000 (64-bit, non-prefetchable) [size=16K]
[ ... ]
	Kernel driver in use: iwlwifi
	Kernel modules: iwlwifi

The error dump I had in journal is attached.
Comment 33 Sébastien Poher 2020-04-01 21:07:11 UTC
Created attachment 288147 [details]
iwlwifi error log on kernel 5.5.11 (openSUSE TW)
Comment 34 Julian Sikorski 2020-04-01 21:10:14 UTC
The patch is only in kernel 5.6 at the moment, it has missed the window for 5.5.14 by a few hours. It should be in 5.5.15 though.