Bug 1517813

Summary: [wl7260-firmware] Intel Corporation Wireless 8260 (rev 3a) doesn't work with iwlwifi-8265-34.ucode added with -79
Product: [Fedora] Fedora Reporter: Jan Pokorný [poki] <jpokorny>
Component: kernelAssignee: Kernel Maintainer List <kernel-maint>
Status: CLOSED WORKSFORME QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: rawhideCC: airlied, ajax, bnocera, bskeggs, dwmw2, ewk, hdegoede, ichavero, itamar, jarodwilson, jeremy, jforbes, jglisse, john.j5live, jonathan, josef, jwboyer, kernel-maint, kyle, labbott, linville, mchehab, mjg59, obmun.h, plroskin, steved, vondruch
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2017-12-14 23:10:44 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1308538    
Attachments:
Description Flags
kernel log with the test day 4.14 kernel none

Description Jan Pokorný [poki] 2017-11-27 14:13:22 UTC
Using kernel 4.15.0-0.rc0.git7.2.fc28.x86_64, I could not get this wifi
card present in Lenovo T460p working with iwl7260-firmware-25.30.13.0-70.fc28.
Downgrading back to -78 fixed the issue (which is also present with -80).

It seems to boil down to iwlwifi-8265-34.ucode file being present with
the those newer packages (and getting priority in some kind of fallback
scheme) while it is not with -78.

Bad boot (with -80):
> Nov 27 14:31:13 betenoire kernel: Intel(R) Wireless WiFi driver for Linux
> Nov 27 14:31:13 betenoire kernel: Copyright(c) 2003- 2015 Intel Corporation
> Nov 27 14:31:13 betenoire kernel: iwlwifi 0000:03:00.0: loaded firmware version 34.0.1 op_mode iwlmvm
> [...]
> Nov 27 14:31:30 betenoire kernel: IPv6: ADDRCONF(NETDEV_UP): wlp3s0: link is not ready
> Nov 27 14:31:33 betenoire kernel: iwlwifi 0000:03:00.0: Error sending SCAN_REQ_UMAC: time out after 2000ms.
> Nov 27 14:31:33 betenoire kernel: iwlwifi 0000:03:00.0: Current CMD queue read_ptr 46 write_ptr 47
> Nov 27 14:31:33 betenoire kernel: iwlwifi 0000:03:00.0: Microcode SW error detected.  Restarting 0x2000000.
> Nov 27 14:31:33 betenoire kernel: iwlwifi 0000:03:00.0: Start IWL Error Log Dump:
> Nov 27 14:31:33 betenoire kernel: iwlwifi 0000:03:00.0: Status: 0x00000100, count: 6
> Nov 27 14:31:33 betenoire kernel: iwlwifi 0000:03:00.0: Loaded firmware version: 34.0.1
> Nov 27 14:31:33 betenoire kernel: iwlwifi 0000:03:00.0: 0x00000084 | NMI_INTERRUPT_UNKNOWN       
> Nov 27 14:31:33 betenoire kernel: iwlwifi 0000:03:00.0: 0x00A002F1 | trm_hw_status0
> [...]
> Nov 27 14:31:33 betenoire kernel: ieee80211 phy0: Hardware restart was requested
> Nov 27 14:31:33 betenoire kernel: iwlwifi 0000:03:00.0: Scan failed! ret -110
> Nov 27 14:31:33 betenoire wpa_supplicant[1169]: wlp3s0: CTRL-EVENT-SCAN-FAILED ret=-110

Good boot (with -78):
> Nov 27 14:33:31 betenoire kernel: Copyright(c) 2003- 2015 Intel Corporation
> Nov 27 14:33:31 betenoire kernel: iwlwifi 0000:03:00.0: Direct firmware load for iwlwifi-8000C-34.ucode failed with error -2
> Nov 27 14:33:31 betenoire kernel: iwlwifi 0000:03:00.0: Direct firmware load for iwlwifi-8000C-33.ucode failed with error -2
> Nov 27 14:33:31 betenoire kernel: iwlwifi 0000:03:00.0: Direct firmware load for iwlwifi-8000C-32.ucode failed with error -2
> Nov 27 14:33:31 betenoire kernel: iwlwifi 0000:03:00.0: loaded firmware version 31.532993.0 op_mode iwlmvm
>
> Nov 27 14:33:54 betenoire NetworkManager[1166]: <info>  [1511789634.1032] device (wlp3s0): supplicant interface state: associating -> 4-way handshake
> Nov 27 14:33:54 betenoire kernel: wlp3s0: Limiting TX power to 15 dBm as advertised by 34:bd:c8:be:62:d1
> Nov 27 14:33:54 betenoire wpa_supplicant[1288]: wlp3s0: WPA: Key negotiation completed with 34:bd:c8:be:62:d1 [PTK=CCMP GTK=CCMP]
> Nov 27 14:33:54 betenoire wpa_supplicant[1288]: wlp3s0: CTRL-EVENT-CONNECTED - Connection to 34:bd:c8:be:62:d1 completed [id=0 id_str=]
> Nov 27 14:33:54 betenoire kernel: IPv6: ADDRCONF(NETDEV_CHANGE): wlp3s0: link becomes ready
> Nov 27 14:33:54 betenoire systemd-networkd-wait-online[1181]: ignoring: lo
> Nov 27 14:33:54 betenoire systemd-networkd[1168]: wlp3s0: Gained carrier


Apparently, I could prevent iwlwifi-8000C-34.ucode being selected one
way or the other, but that would not be too systemic.

Comment 1 Pavel Roskin 2017-11-30 17:59:57 UTC
Created attachment 1361097 [details]
kernel log with the test day 4.14 kernel

Comment 2 Pavel Roskin 2017-11-30 18:00:30 UTC
I'm seeing a similar error with the kernel test day image: https://fedoraproject.org/wiki/Test_Day:2017-11-30_Kernel_4.14_Test_Day

WiFi is not working. WiFi is working on the same machine with Fedora 27 4.13 kernels.

Dell Precision 7510, x86_64.

$ uname -a
Linux localhost 4.14.2-300.fc27.x86_64 #1 SMP Tue Nov 28 00:29:15 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux

I've attached the kernel log.

Comment 3 Pavel Roskin 2017-11-30 18:14:47 UTC
WiFi starts working after removing /lib/firmware/iwlwifi-8000C-34.ucode and reloading the modules (iwlmvm and iwlwifi). Apparently the version 34 of the firmware is bad or incompatible with the driver.

Intel(R) Wireless WiFi driver for Linux
Copyright(c) 2003- 2015 Intel Corporation
iwlwifi 0000:02:00.0: Direct firmware load for iwlwifi-8000C-34.ucode failed with error -2
iwlwifi 0000:02:00.0: Direct firmware load for iwlwifi-8000C-33.ucode failed with error -2
iwlwifi 0000:02:00.0: Direct firmware load for iwlwifi-8000C-32.ucode failed with error -2
iwlwifi 0000:02:00.0: loaded firmware version 31.560484.0 op_mode iwlmvm
iwlwifi 0000:02:00.0: Detected Intel(R) Dual Band Wireless AC 8260, REV=0x208
iwlwifi 0000:02:00.0: base HW address: 28:16:ad:10:71:2e
ieee80211 phy3: Selected rate control algorithm 'iwl-mvm-rs'
(NULL device *): hwmon_device_register() is deprecated. Please convert the driver to use hwmon_device_register_with_info().
thermal thermal_zone11: failed to read out thermal zone (-61)
iwlwifi 0000:02:00.0 wlp2s0: renamed from wlan0
IPv6: ADDRCONF(NETDEV_UP): wlp2s0: link is not ready
IPv6: ADDRCONF(NETDEV_UP): wlp2s0: link is not ready
IPv6: ADDRCONF(NETDEV_UP): wlp2s0: link is not ready
IPv6: ADDRCONF(NETDEV_UP): wlp2s0: link is not ready

Comment 4 Jacobo Cabaleiro 2017-11-30 21:22:46 UTC
Identical situation with kernel from test day (https://fedoraproject.org/wiki/Test_Day:2017-11-30_Kernel_4.14_Test_Day) in F27, same 8260 (rev 3a).

In my case error looks like this:

9:54:20 kernel: iwlwifi 0000:22:00.0: Microcode SW error detected.  Restarting 0x2000000.
19:54:20 kernel: iwlwifi 0000:22:00.0: Scan failed! ret -110
19:54:20 kernel: iwlwifi 0000:22:00.0: 0x00000000 | isr status reg
19:54:20 kernel: iwlwifi 0000:22:00.0: 0x00000000 | last host cmd
19:54:20 kernel: iwlwifi 0000:22:00.0: 0x00000000 | stack pointer
19:54:20 kernel: iwlwifi 0000:22:00.0: 0x00000000 | frame pointer
19:54:20 kernel: iwlwifi 0000:22:00.0: 0x00000000 | umac minor
19:54:20 kernel: iwlwifi 0000:22:00.0: 0x00000000 | umac major
19:54:20 kernel: iwlwifi 0000:22:00.0: 0x00000000 | umac data3
19:54:20 kernel: iwlwifi 0000:22:00.0: 0x00000000 | umac data2
19:54:20 kernel: iwlwifi 0000:22:00.0: 0x00000000 | umac data1
19:54:20 kernel: iwlwifi 0000:22:00.0: 0x00000000 | umac interruptlink2
19:54:20 kernel: iwlwifi 0000:22:00.0: 0x00000000 | umac interruptlink1
19:54:20 kernel: iwlwifi 0000:22:00.0: 0x00000000 | umac branchlink2
19:54:20 kernel: iwlwifi 0000:22:00.0: 0x00000000 | umac branchlink1
19:54:20 kernel: iwlwifi 0000:22:00.0: 0x00000000 | ADVANCED_SYSASSERT
19:54:20 kernel: iwlwifi 0000:22:00.0: 0x00342838 | flow_handler
19:54:20 kernel: iwlwifi 0000:22:00.0: 0x30101341 | timestamp
19:54:20 kernel: iwlwifi 0000:22:00.0: 0x0000008F | lmpm_pmg_sel
19:54:20 kernel: iwlwifi 0000:22:00.0: 0x00000000 | l2p_addr_match
19:54:20 kernel: iwlwifi 0000:22:00.0: 0x00000000 | l2p_mhvalid
19:54:20 kernel: iwlwifi 0000:22:00.0: 0x00000020 | l2p_duration
19:54:20 kernel: iwlwifi 0000:22:00.0: 0x000066DC | l2p_control
19:54:20 kernel: iwlwifi 0000:22:00.0: 0x00000000 | wait_event
19:54:20 kernel: iwlwifi 0000:22:00.0: 0x002F012C | last cmd Id
19:54:20 kernel: iwlwifi 0000:22:00.0: 0x00000000 | isr4
19:54:20 kernel: iwlwifi 0000:22:00.0: 0x00400080 | isr3
19:54:20 kernel: iwlwifi 0000:22:00.0: 0x08001802 | isr2
19:54:20 kernel: iwlwifi 0000:22:00.0: 0x00800000 | isr1
19:54:20 kernel: iwlwifi 0000:22:00.0: 0x00022080 | isr0
19:54:20 kernel: iwlwifi 0000:22:00.0: 0x002F012C | hcmd
19:54:20 kernel: iwlwifi 0000:22:00.0: 0x00489008 | board version
19:54:20 kernel: iwlwifi 0000:22:00.0: 0x00000201 | hw version
19:54:20 kernel: iwlwifi 0000:22:00.0: 0x00000000 | uCode version minor
19:54:20 kernel: iwlwifi 0000:22:00.0: 0x00000022 | uCode version major
19:54:20 kernel: iwlwifi 0000:22:00.0: 0x00000001 | uCode revision type
19:54:20 kernel: iwlwifi 0000:22:00.0: 0x031A5AE1 | time gp2
19:54:20 kernel: iwlwifi 0000:22:00.0: 0x00000000 | time gp1
19:54:20 kernel: iwlwifi 0000:22:00.0: 0x00000000 | tsf hi
19:54:20 kernel: iwlwifi 0000:22:00.0: 0x031A5AE0 | tsf low
19:54:20 kernel: iwlwifi 0000:22:00.0: 0x00192F9B | beacon time
19:54:20 kernel: iwlwifi 0000:22:00.0: 0x07830000 | data3
19:54:20 kernel: iwlwifi 0000:22:00.0: 0x00000080 | data2
19:54:20 kernel: iwlwifi 0000:22:00.0: 0x00000000 | data1
19:54:20 kernel: iwlwifi 0000:22:00.0: 0x00005ADA | interruptlink2
19:54:20 kernel: iwlwifi 0000:22:00.0: 0x0003867A | interruptlink1
19:54:20 kernel: iwlwifi 0000:22:00.0: 0x0002395C | branchlink2
19:54:20 kernel: iwlwifi 0000:22:00.0: 0x00000000 | trm_hw_status1
19:54:20 kernel: iwlwifi 0000:22:00.0: 0x000002F0 | trm_hw_status0
19:54:20 kernel: iwlwifi 0000:22:00.0: 0x00000084 | NMI_INTERRUPT_UNKNOWN       
19:54:20 kernel: iwlwifi 0000:22:00.0: Loaded firmware version: 34.0.1
19:54:20 kernel: iwlwifi 0000:22:00.0: Status: 0x00000100, count: 6
19:54:20 kernel: iwlwifi 0000:22:00.0: Start IWL Error Log Dump:
19:54:20 kernel: iwlwifi 0000:22:00.0: Current CMD queue read_ptr 48 write_ptr 49
19:54:20 kernel: iwlwifi 0000:22:00.0: Error sending SCAN_REQ_UMAC: time out after 2000ms.

Comment 5 Vít Ondruch 2017-12-01 09:52:08 UTC
I observe the same issue. Downgrading to -78.

Comment 6 Vít Ondruch 2017-12-01 09:58:02 UTC
Interestingly, with the -80 linux-firmware, my laptop even does not restart correctly. It hangs at some UEFI initialization phase.

Comment 7 Jan Pokorný [poki] 2017-12-01 18:03:28 UTC
For the record, I am using legacy BIOS to boot.

Comment 8 Pavel Roskin 2017-12-01 18:42:35 UTC
The fix is in Linux mainline:
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=dac4df1c5f2c34903f61b1bc4fc722e31b4199e7

It is also in Linux 4.14.3:
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git/log/?h=linux-4.14.y

The workaround for now is to move /lib/firmware/iwlwifi-*-34.ucode to another directory.

Comment 9 Josh Boyer 2017-12-04 13:16:08 UTC
*** Bug 1520071 has been marked as a duplicate of this bug. ***

Comment 10 Josh Boyer 2017-12-04 13:18:48 UTC
This is a kernel bug.  Should be fixed in rawhide already and f27 and older will be getting a 4.14.3 rebase soon.

Comment 11 Jan Pokorný [poki] 2017-12-14 23:10:44 UTC
Confirming it started to work again with 4.15.0-0.rc2.git2.1.fc28.x86_64
at latest (had iwl7260-firmware suppressed from updates for a bit).