Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

NETCONF Hook Breaks WiFi Link on Arch Linux #20

Open
trainzkid opened this issue Jan 23, 2023 · 3 comments
Open

NETCONF Hook Breaks WiFi Link on Arch Linux #20

trainzkid opened this issue Jan 23, 2023 · 3 comments

Comments

@trainzkid
Copy link

Mostly for visibility, per Arch Linux bug FS#64393 - community/mkinitcpio-netconf: breaks iwlwifi module, it appears that adding the NETCONF hook to mkinitcpio prevents iwlwifi from creating the link for some WiFi cards on Arch Linux. I don't know if this is widely known or which cards are affected, but it affects my card (Intel AX210), and I keep coming back for a solution.

Symptoms:

  • lspci -k shows the AX210 card successfully loaded the iwlwifi module
ryan@Atlas ~> lspci -k | grep -i network -A6
08:00.0 Network controller: Intel Corporation Wi-Fi 6 AX210/AX211/AX411 160MHz (rev 1a)
        Subsystem: Intel Corporation Wi-Fi 6 AX210 160MHz
        Kernel driver in use: iwlwifi
        Kernel modules: iwlwifi
  • dmesg shows no obvious errors (as far as I can tell?)
ryan@Atlas ~> journalctl --dmesg --grep=iwlwifi
Jan 14 11:56:44 Atlas kernel: iwlwifi 0000:08:00.0: api flags index 2 larger than supported by driver
Jan 14 11:56:44 Atlas kernel: iwlwifi 0000:08:00.0: TLV_FW_FSEQ_VERSION: FSEQ Version: 0.0.2.36
Jan 14 11:56:44 Atlas kernel: iwlwifi 0000:08:00.0: loaded firmware version 72.daa05125.0 ty-a0-gf-a0-72.ucode op_mode iwlmvm
  • ip link only lists Ethernet link and loopback, no WiFi link
ryan@Atlas ~> ip link
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: enp6s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
    link/ether xx:xx:xx:xx:xx:xx brd ff:ff:ff:ff:ff:ff

Thankfully the above bug report provided me a workaround:

  • modprobe iwlmvm/iwldvm to cause iwlwifi to create the link on an already-booted system
sudo modprobe iwlmvm && journalctl --dmesg --grep=iwlwifi
Jan 23 13:41:38 Atlas kernel: iwlwifi 0000:08:00.0: Detected Intel(R) Wi-Fi 6 AX210 160MHz, REV=0x420
Jan 23 13:41:38 Atlas kernel: iwlwifi 0000:08:00.0: loaded PNVM version dbd9582f
Jan 23 13:41:38 Atlas kernel: iwlwifi 0000:08:00.0: Detected RF GF, rfid=0x10d000
Jan 23 13:41:38 Atlas kernel: iwlwifi 0000:08:00.0: base HW address: xx:xx:xx:xx:xx:xx
Jan 23 13:41:38 Atlas kernel: iwlwifi 0000:08:00.0 wlp8s0: renamed from wlan0

ryan@Atlas ~> ip link
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: enp6s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
    link/ether xx:xx:xx:xx:xx:xx brd ff:ff:ff:ff:ff:ff
3: wlp8s0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/ether xx:xx:xx:xx:xx:xx brd ff:ff:ff:ff:ff:ff
  • add iwlmvm/iwldvm to the HOOKS section of mkinitcpio to cause iwlwifi to create the link correctly at boot (I haven't tested this yet, but the bug report listed it as a solution)

ENV:

ryan@Atlas ~> pacman --query linux-zen linux-firmware
linux-zen 6.1.5.zen2-1
linux-firmware 20221214.f3c283e-1

The bug report also seems to point out that this would be better addressed by mkinitcpio-netconf rather than Arch Linux. I have no opinion here, just adding this issue for visibility to others that might run into issues like I did.

Let me know if there's anything else I can provide, or if this is the wrong place to put this.

@rgerardi
Copy link

rgerardi commented May 4, 2023

I was able to reproduce the issue with an Intel Corporation Wi-Fi 6 AX200 card.

@hashworks
Copy link

hashworks commented Aug 3, 2023

Same with an AX201 on a Dell Latitude 5420. Mistook it for a kernel package bug...

For me this wasn't an issue in linux 6.3.9, but it needed MODULES=(iwlmvm iwldvm).

@nerdroychan
Copy link

nerdroychan commented Sep 5, 2023

Also experiencing issues with my AX200. You need either MODULES=(iwlmvm iwldvm) as described above (actually, maybe just one of them), or let moddules-load.d take care of iwlmvm or iwldvm manually. Not sure about the root cause.

Same with an AX201 on a Dell Latitude 5420. Mistook it for a kernel package bug...

For me this wasn't an issue in linux 6.3.9, but it needed MODULES=(iwlmvm iwldvm).

For all 6.4.* kernels iwlmvm (or iwldvm, depending on the device firmware) need to be manually reloaded after boot because of missing firmware during early boot stage. I am running 6.5.1 in testing and seems it's finally fixed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants