前几天我的电脑(Arch Linux + Gnome)突然无法连接网络,NetworkManager 无法扫描任何 wifi 连接。systemctl status wpa_supplicant
输出ioctl[SIOCSIWENCODEEXT]: Operation not supported
。我尝试降级 NetworkManger、wpa_supplicant、内核等,但没有任何效果。然后我尝试使用另一个应用程序 wifi-menu 连接 wifi。但遇到了同样的问题。
我意识到这可能不是应用程序的原因而是驱动程序的问题。
输出dmesg | grep iwlwifi
[ 4.676519] iwlwifi 0000:03:00.0: Found debug destination: EXTERNAL_DRAM
[ 4.676520] iwlwifi 0000:03:00.0: Found debug configuration: 0
[ 4.676987] iwlwifi 0000:03:00.0: loaded firmware version 36.952d9faa.0 op_mode iwlmvm
[ 4.919999] iwlwifi 0000:03:00.0: Detected Intel(R) Dual Band Wireless AC 8265, REV=0x230
[ 4.928746] iwlwifi 0000:03:00.0: Applying debug destination EXTERNAL_DRAM
[ 4.929049] iwlwifi 0000:03:00.0: Allocated 0x00400000 bytes for firmware monitor.
[ 4.981351] iwlwifi 0000:03:00.0: base HW address: d4:6d:6d:fb:e7:4e
[ 5.061679] iwlwifi 0000:03:00.0 wlp3s0: renamed from wlan0
[ 5.418234] iwlwifi 0000:03:00.0: Applying debug destination EXTERNAL_DRAM
[ 5.550877] iwlwifi 0000:03:00.0: Applying debug destination EXTERNAL_DRAM
[ 5.617586] iwlwifi 0000:03:00.0: FW already configured (0) - re-configuring
没有发现任何可疑故障。然后我尝试重新加载模块iwlmvm
。令人惊讶的是,它成功了!NetworkManger 开始正常工作。
但为什么?
输出lshw -c network
*-network
description: Wireless interface
product: Wireless 8265 / 8275
vendor: Intel Corporation
physical id: 0
bus info: pci@0000:03:00.0
logical name: wlp3s0
version: 78
serial: b2:c2:56:48:d6:1e
width: 64 bits
clock: 33MHz
capabilities: pm msi pciexpress bus_master cap_list ethernet physical wireless
configuration: broadcast=yes driver=iwlwifi driverversion=5.4.11-arch1-1 firmware=36.952d9faa.0 latency=0 link=yes multicast=yes wireless=IEEE 802.11
resources: irq:147 memory:b4100000-b4101fff
*-network DISABLED
description: Ethernet interface
physical id: 3
logical name: br0
serial: d6:f5:c0:1f:55:1d
capabilities: ethernet physical
configuration: broadcast=yes driver=bridge driverversion=2.3 firmware=N/A link=no multicast=yes