笔记本电脑未插电时WiFi正常,插电后WiFi变慢问题的排查与解决记录
笔记本电脑未插电时WiFi正常,插电后WiFi变慢问题的排查与解决记录
最近碰到个闹心的问题:笔记本没插电源的时候WiFi一切正常,一插上充电器,WiFi就开始抽风。我在网上搜了好半天,试了各种办法都没搞定,折腾许久终于找到了解决方案,这里把整个过程记录下来。
我试过的无效方法
- 执行命令
sudo iwconfig wlo1 power off关闭WiFi电源管理 - 修改配置文件
/etc/NetworkManager/conf.d/default-wifi-powersave-on.conf,把wifi.powersave = 3改成wifi.powersave = 2 - 重启电脑、凑近路由器测试、用其他设备验证网络(确认不是路由器本身的问题)
- 遗憾的是手头暂时没有网线,没法测试有线网络的情况
硬件与网络状态信息
网络硬件详情(sudo lshw -C network 输出)
*-network description: Wireless interface product: Cannon Lake PCH CNVi WiFi vendor: Intel Corporation physical id: 14.3 bus info: pci@0000:00:14.3 logical name: wlo1 version: 10 serial: 04:d3:b0:ab:82:8b width: 64 bits clock: 33MHz capabilities: pm msi pciexpress msix bus_master cap_list ethernet physical wireless configuration: broadcast=yes driver=iwlwifi driverversion=5.19.0-43-generic firmware=46.fae53a8b.0 9000-pu-b0-jf-b0- ip=192.168.2.143 latency=0 link=yes multicast=yes wireless=IEEE 802.11 resources: irq:16 memory:a4414000-a4417fff *-network description: Ethernet interface product: QCA8171 Gigabit Ethernet vendor: Qualcomm Atheros physical id: 0 bus info: pci@0000:03:00.0 logical name: enp3s0 version: 10 serial: 30:9c:23:fe:34:2a capacity: 1Gbit/s width: 64 bits clock: 33MHz capabilities: pm pciexpress msi msix bus_master cap_list ethernet physical tp 10bt 10bt-fd 100bt 100bt-fd 1000bt-fd autonegotiation configuration: autonegotiation=on broadcast=yes driver=alx driverversion=5.19.0-43-generic latency=0 link=no multicast=yes port=twisted pair resources: irq:16 memory:a4200000-a423ffff ioport:3000(size=128)
未插电时WiFi状态信息
Interface: wlo1 Signal strength: -66 Signal quality: Mbit/s Signal bars: ▂▄▆_ Wi-Fi Speed: 540 Mbit/s Wi-Fi Channel: 44 Wi-Fi Noise, Link and Quality Level: Link: 44. Level: -66. Noise: -256
插电时WiFi状态信息
Interface: wlo1 Signal strength: -63 Signal quality: Mbit/s Signal bars: ▂▄▆_ Wi-Fi Speed: 540 Mbit/s Wi-Fi Channel: 44 Wi-Fi Noise, Link and Quality Level: Link: 46. Level: -64. Noise: -256
关键排查步骤
多亏网友waltinator的建议,我用 sudo journalctl --follow 命令实时跟踪系统日志,发现系统反复出现Microcode SW error的报错,这应该就是导致插电后WiFi异常的根源。
最终解决方法
找到问题后,我修改了iwlwifi无线网卡模块的参数,设置以下参数:11n_disable=1 bt_coex_active=0 uapsd_disable=1
具体是修改 /sys/module/iwlwifi/parameters 下的对应参数,设置完成后,插电时WiFi异常的问题就解决了。
备注:内容来源于stack exchange,提问作者decisionmachine




