问题描述
- 安装uos专业版1043版本时,使用u盘启动盘, grub界面选择安装系统后会概率性出现卡在logo界面,无法启动安装器。进入tty2不断有soft lock日志刷出,并且伴有Call Trace
- 安装uos专业版1043版本时,概率性进入安装器,但是执行hooks/in_chroot/06_install_drivers.job脚本时导致安装器卡住,原因时这个脚本会执行lspci,lspci此时会卡死
相关日志见附件
环境信息
设备: MECHREVO X6Ti Series GH5KN41 (To be filled by O.E.M.) Laptop
操作系统: UnionTech OS Desktop 20 Professional Linux version 4.19.0-amd64-desktop (uos@x86-compile-PC) (Uos 8.3.0.5-1+dde) #4204 SMP Thu Sep 23 15:37:46 CST 2021
处理器: Intel® Core™ i7-7700HQ CPU @ 2.80GHz (四核 / 八逻辑处理器)
主板: X6Ti Series GH5KN41
内存: 8GB(DDR4 2400 DDR4 2400MHz (0.4ns))
显示适配器: GP107M [GeForce GTX 1050 Mobile]/HD Graphics 630
音频适配器: CM238 HD Audio Controller/GP107GL High Definition Audio Controller
存储设备: HGST HTS541010A9 (1.00 TB)/Phison SM280128G (128 GB)
蓝牙: Intel Bluetooth Device
网络适配器: RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller/Dual Band Wireless-AC 3168NGW [Stone Peak]
鼠标: ETPS/2 Elantech Touchpad (ETPS/2 Elantech Touchpad)
键盘: AT Translated Set 2 keyboard (AT Translated Set 2 keyboard)
显示设备: BOE CQ LCD Monitor(15.5 英寸 (344x194 mm))
图像设备: HD Webcam (Acer HD Webcam)
既有独显又有集显
问题分析
- nvidia 开源驱动nouveau加载后会导致soft lock和Call Trace 这个是已知问题,在启动界面的logo画面有时会卡主有时不会
- 当安装器执行in_chroot/06_install_nvidia.job的时候会执行lspci,进而导致安装器卡主。
- NVIDIA显卡开源驱动nouveau对nvidia的支持很差, 会出现一些奇怪的问题。
解决方法
在grub界面禁用nouveau驱动
在grub 中linux那一行的最后追加nouveau.modeset=0,禁用nouveau驱动
将nouveau驱动加入黑名单
创建文件:/etc/modprobe.d/blacklist.conf
内容如下:
blacklist nouveau
blacklist lbm-nouveau
options nouveau modeset=0
alias nouveau off
alias lbm-nouveau off
然后执行
sudo update-initramfs -u
参考资料
https://bugzilla.kernel.org/show_bug.cgi?id=156341
https://itectec.com/ubuntu/ubuntu-nmi-watchdog-bug-soft-lockup/
https://askubuntu.com/questions/875173/nmi-watchdog-bug-soft-lockup-cpu2-stuck-for-23s-plymouthd305
https://newbedev.com/nmi-watchdog-bug-soft-lockup-cpu-2-stuck-for-23s-plymouthd-305
https://wiki.archlinux.org/title/Nouveau_(%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87)#Random_lockups_with_kernel_error_messages
https://tech.codefog.com/2018/nmi-watchdog-bug-soft-lockup-cpu-stack/