Ubuntu bionic Kernel 4.15.0 quadro fx 1800 停止与 nvidia-340 一起工作

Ubuntu bionic Kernel 4.15.0 quadro fx 1800 停止与 nvidia-340 一起工作

我的系统突然停止显示 LightDM 登录屏幕,并且日志中充满了错误 如果我删除并清除 nvidia 驱动程序并回退到 nouveau - 它可以正常工作。但没有我急需的设置。

$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 18.04.1 LTS
Release:    18.04
Codename:   bionic

$ sudo lshw -c display
  *-display                 
       description: VGA compatible controller
       product: G94GL [Quadro FX 1800]
       vendor: NVIDIA Corporation
       physical id: 0
       bus info: pci@0000:0f:00.0
       version: a1
       width: 64 bits
       clock: 33MHz
       capabilities: pm msi pciexpress vga_controller bus_master cap_list rom
       configuration: driver=nouveau latency=0
       resources: irq:25 memory:e2000000-e2ffffff memory:d0000000-dfffffff memory:e0000000-e1ffffff ioport:e000(size=128) memory:c0000-dffff

$ uname -r
4.15.0-43-generic

刚刚在 grub 默认设置中尝试过:

nvidia-drm.模式集=1

还有人有同样的问题吗?

附加信息:

$ sudo ubuntu-drivers devices
== /sys/devices/pci0000:00/0000:00:03.0/0000:0f:00.0 ==
modalias : pci:v000010DEd00000638sv000010DEsd0000062Cbc03sc00i00
vendor   : NVIDIA Corporation
model    : G94GL [Quadro FX 1800]
driver   : nvidia-304 - third-party free
driver   : nvidia-340 - distro non-free recommended
driver   : xserver-xorg-video-nouveau - distro free builtin

$ sudo ubuntu-drivers autoinstall
Loading new nvidia-340-340.107 DKMS files...
Building for 4.15.0-43-generic
Building for architecture x86_64
Building initial module for 4.15.0-43-generic
Done.
nvidia:
Running module version sanity check.
 - Original module
   - No original module exists within this kernel
 - Installation
   - Installing to /lib/modules/4.15.0-43-generic/updates/dkms/

nvidia_uvm.ko:
Running module version sanity check.
 - Original module
 - No original module exists within this kernel
 - Installation
 - Installing to /lib/modules/4.15.0-43-generic/updates/dkms/

系统日志错误:

Jan  1 22:44:30 tvheadend kernel: [  174.314926] caller os_map_kernel_space+0x86/0xb0 [nvidia] mapping multiple BARs
Jan  1 22:44:31 tvheadend systemd-udevd[7551]: Process '/bin/systemctl stop --no-block nvidia-persistenced' failed with exit code 5.
Jan  1 22:44:31 tvheadend systemd-udevd[7573]: Process '/bin/systemctl start --no-block nvidia-persistenced.service' failed with exit code 5.
Jan  1 22:44:31 tvheadend kernel: [  175.595428] resource sanity check: requesting [mem 0x000c0000-0x000fffff], which spans more than pnp 00:07 [mem 0x000d1200-0x000e7fff]
Jan  1 22:44:31 tvheadend kernel: [  175.595570] caller os_map_kernel_space+0x86/0xb0 [nvidia] mapping multiple BARs
Jan  1 22:44:33 tvheadend systemd-udevd[7577]: Process '/bin/systemctl stop --no-block nvidia-persistenced' failed with exit code 5.
Jan  1 22:44:33 tvheadend systemd[1]: lightdm.service: Main process exited, code=exited, status=1/FAILURE
Jan  1 22:44:33 tvheadend systemd[1]: lightdm.service: Failed with result 'exit-code'.
Jan  1 22:44:33 tvheadend systemd[1]: lightdm.service: Service hold-off time over, scheduling restart.
Jan  1 22:44:33 tvheadend systemd[1]: lightdm.service: Scheduled restart job, restart counter is at 36.
Jan  1 22:44:33 tvheadend systemd[1]: Stopped Light Display Manager.
Jan  1 22:44:33 tvheadend systemd[1]: Starting Detect the available GPUs and deal with any system changes...
Jan  1 22:44:33 tvheadend systemd[1]: Started Detect the available GPUs and deal with any system changes.
Jan  1 22:44:33 tvheadend systemd[1]: Starting Light Display Manager...
Jan  1 22:44:33 tvheadend lightdm[7642]: Seat type 'xlocal' is deprecated, use 'type=local' instead
Jan  1 22:44:33 tvheadend systemd[1]: Started Light Display Manager.
Jan  1 22:44:33 tvheadend systemd-udevd[7665]: Process '/bin/systemctl start --no-block nvidia-persistenced.service' failed with exit code 5.
Jan  1 22:44:33 tvheadend kernel: [  177.064251] resource sanity check: requesting [mem 0x000c0000-0x000fffff], which spans more than pnp 00:07 [mem 0x000d1200-0x000e7fff]
Jan  1 22:44:33 tvheadend kernel: [  177.064381] caller os_map_kernel_space+0x86/0xb0 [nvidia] mapping multiple BARs
Jan  1 22:44:34 tvheadend systemd-udevd[7668]: Process '/bin/systemctl stop --no-block nvidia-persistenced' failed with exit code 5.
Jan  1 22:44:34 tvheadend systemd-udevd[7690]: Process '/bin/systemctl start --no-block nvidia-persistenced.service' failed with exit code 5.
Jan  1 22:44:34 tvheadend kernel: [  178.352913] resource sanity check: requesting [mem 0x000c0000-0x000fffff], which spans more than pnp 00:07 [mem 0x000d1200-0x000e7fff]
Jan  1 22:44:34 tvheadend kernel: [  178.353057] caller os_map_kernel_space+0x86/0xb0 [nvidia] mapping multiple BARs

我怀疑内核升级是因为我发现/var/log/apt/history.log

Start-Date: 2018-12-21  06:15:23
Commandline: /usr/bin/unattended-upgrade
Install: linux-headers-4.15.0-43:amd64 (4.15.0-43.46, automatic), linux-modules-4.15.0-43-generic:amd64 (4.15.0-43.46, automatic), linux-headers-4.15.0-43-generic:amd64 (4.15.0-43.46, automatic), linux-modules-extra-4.15.0-43-generic:amd64 (4.15.0-43.46, automatic), linux-image-4.15.0-43-generic:amd64 (4.15.0-43.46, automatic)
Upgrade: linux-headers-generic:amd64 (4.15.0.42.44, 4.15.0.43.45), linux-image-generic:amd64 (4.15.0.42.44, 4.15.0.43.45), linux-generic:amd64 (4.15.0.42.44, 4.15.0.43.45)
End-Date: 2018-12-21  06:17:05

答案1

因此,我的决心是:

1.根据@ubfan1 的建议,我已启动了 4.15.0-42 内核并连接了 TFT 显示器(到目前为止,计算机无需显示器即可工作)

2.决定再次安装nvidia-340

sudo ubuntu-drivers devices
sudo ubuntu-drivers autoinstall

3.重启后一切正常

4. 再次重新启动,因为我已经看到 dkms 处理两个内核的编译模块,所以我选择的是第一个,默认的 4.15.0-43

Voala,显示屏亮了,Nvidia 驱动程序已加载,分辨率达到了最高。

因此,该解决方案引导我,第一 - 在 4.15.0-43 下/针对 4.15.0-43 进行编译时可能出现错误,其次 - 问题可能是缺少附加显示。

确认:缺少附加显示器是问题所在....诡异的 :/

相关内容