Affected version
Broken: VyOS 2026.08.05-0033-rolling (circinus), kernel 6.18.41-vyos
(from the boot log: Linux version 6.18.41-vyos ... #1 SMP Sun Aug 2 19:51:29 UTC 2026,
BOOT_IMAGE=/boot/2026.08.05-0033-rolling/vmlinuz)
Regression information
- Last known working: rolling builds on the 6.6 kernel line — verified on:
Version: VyOS 2026.03 Release train: circinus Release flavor: generic Built by: autobuild@vyos.net Built on: Wed 18 Mar 2026 20:03 UTC Architecture: x86_64 System type: KVM guest
(kernel 6.6.128 — BE200 probes, associates, and passes traffic, loading `iwlwifi-gl-c0-fm-c0-83.ucode`)
- First broken: any rolling build after the 6.6 → 6.18 kernel jump from T8147 (vyos-build commit 739f904284, "Kernel: T8147: upgrade to 6.18", 2026-05-03). Verified broken on 2026.08.05-0033-rolling.
Steps to reproduce
- Boot any rolling image with the 6.18 kernel (e.g. 2026.08.05-0033-rolling) on a system with an Intel BE200 (PCI 8086:272b).
- sudo dmesg | grep iwlwifi — the probe fails (log below); no wlan interface and no phy is ever created.
- Any wireless configuration then fails validation, e.g.:
set interfaces wireless wlan0 physical-device 'phy0' Device interface phy0 does not exist Invalid value Value validation failed
No special configuration is required to trigger the bug — the driver probe
fails at boot before any config applies. For completeness, the config that
works on 6.6 and fails to load on 6.18:
set interfaces wireless wlan0 physical-device 'phy0' set interfaces wireless wlan0 type 'station' set interfaces wireless wlan0 ssid 'MYSSID' set interfaces wireless wlan0 security wpa mode 'wpa3' set interfaces wireless wlan0 security wpa passphrase 'xxxxxxxx' set interfaces wireless wlan0 address 'dhcp'
Expected behavior
BE200 probes and interfaces wireless wlan0 commits and works, as on the
6.6-kernel images.
Actual behavior
kernel: iwlwifi 0000:03:00.0: Detected crf-id 0x2001910, cnv-id 0x2001910 wfpm id 0x80000000 kernel: iwlwifi 0000:03:00.0: PCI dev 272b/00f4, rev=0x472, rfid=0x112200 kernel: No config found for PCI dev 272b/00f4, rev=0x472, rfid=0x112200 kernel: iwlwifi 0000:03:00.0: probe with driver iwlwifi failed with error -22
Follow-on damage: because wlan0 never exists, the boot-time load of a config
containing interfaces wireless fails ("Configuration error",
interfaces_wireless_wlan0 commit script), and the system comes up with the
entire wireless subtree missing from the running config. A save in that
state silently strips the wireless config from config.boot.
Root cause
Kernel 6.15+ moved the Intel BE-series (GL/Bz) devices from the iwlmvm
op-mode to the new iwlmld op-mode. All their device-match entries in
drivers/net/wireless/intel/iwlwifi/pcie/drv.c are guarded by
#if IS_ENABLED(CONFIG_IWLMLD):
https://github.com/gregkh/linux/blob/v6.18/drivers/net/wireless/intel/iwlwifi/pcie/drv.c
(see the /* FM RF */ block: iwl_be200_name, iwl_be201_name, ...)
The VyOS kernel config
(scripts/package-build/linux-kernel/config/x86/vyos_defconfig) has:
CONFIG_IWLWIFI=m CONFIG_IWLDVM=m CONFIG_IWLMVM=m
but no CONFIG_IWLMLD, so every BE-series device entry is compiled out and
the probe fails with "No config found". This affects every Intel Wi-Fi 7 /
BE-series card on all rolling builds since May 2026.
Proposed fix
Add CONFIG_IWLMLD=m to the x86 and arm64 kernel configs. The required
firmware already ships in the image — vyos-build pins linux-firmware
20260410, which includes the iwlwifi-gl-c0-fm-c0-*.ucode range the 6.18
driver requests — so enabling the kernel config option is the only change
needed. Other distributions hit the same regression after their kernel
bumps and fixed it exactly this way:
- Armbian: https://github.com/armbian/build/pull/9846 (enables iwlwifi MLD)
- Void Linux (same symptom): https://github.com/void-linux/void-packages/issues/56644
Hardware notes
Intel BE200 (8086:272b, subsystem 00f4, rev 0x472), PCIe passthrough into a
KVM guest (Proxmox). The identical passthrough setup works under the 6.6
kernel, so virtualization is not a factor in the probe failure.