Page MenuHomeSolus

Latest updates killed the NVidia drivers
Closed, ResolvedPublic

Description

The latest updates from this weekend (updated 2016-04-02) killed the NVidia 375.39 driver on my Optimus laptop.

From Xorg.0.log:

[ 5.524] (EE) NVIDIA: Failed to initialize the NVIDIA kernel module. Please see the
[ 5.524] (EE) NVIDIA: system's kernel log for additional error messages and
[ 5.524] (EE) NVIDIA: consult the NVIDIA README for details.
[ 5.524] (EE) No devices detected.
[ 5.524] (EE)
Fatal server error:
[ 5.524] (EE) no screens found(EE)
[ 5.524] (EE)
...

Update log:

Operation #93: upgrade
Date: 2017-04-02 15:40

  • clr-boot-manager is upgraded from 1.5.1-6-1-x86_64 to 1.5.1-10-1-x86_64.
  • kernel-glue is upgraded from 3-188-1-x86_64 to 3-190-1-x86_64.
  • linux-lts is upgraded from 4.9.18-10-1-x86_64 to 4.9.20-12-1-x86_64.
  • nvidia-glx-driver is upgraded from 375.39-128-1-x86_64 to 375.39-130-1-x86_64.
  • budgie-desktop-branding is upgraded from 6-14-1-x86_64 to 6-15-1-x86_64.
  • nvidia-304-glx-driver-modaliases is upgraded from 304.135-124-1-x86_64 to 304.135-126-1-x86_64.
  • linux-lts-headers is upgraded from 4.9.18-10-1-x86_64 to 4.9.20-12-1-x86_64.
  • nvidia-glx-driver-modaliases is upgraded from 375.39-128-1-x86_64 to 375.39-130-1-x86_64.
  • runc is upgraded from 1.0.0_rc2-4-1-x86_64 to 1.0.0_rc3-6-1-x86_64.
  • nvidia-340-glx-driver-modaliases is upgraded from 340.102-88-1-x86_64 to 340.102-90-1-x86_64.
  • containerd is upgraded from 0.2.4-6-1-x86_64 to 0.2.5-8-1-x86_64.
  • docker is upgraded from 1.12.6-8-1-x86_64 to 17.03.1-9-1-x86_64.
  • dracut is upgraded from 33-34-1-x86_64 to 041-35-1-x86_64.
  • nvidia-glx-driver-32bit is upgraded from 375.39-128-1-x86_64 to 375.39-130-1-x86_64.
  • linux-headers is upgraded from 4.9.6-3-1-x86_64 to 4.9.18-4-1-x86_64 with delta.

Additional info:
Kernel: 4.9.18-10.lts
Display driver: NVidia 375.39
CPU: Intel Core i7-4700HQ
GPU: NVIDIA GeForce GTX 860M / 2GB
Using the stable repo

Machine specs: https://www.msi.com/Laptop/GE70-2PE-Apache-Pro.html#hero-specification

Related Objects

ktw created this task.Apr 2 2017, 3:39 PM
ktw updated the task description. (Show Details)Apr 3 2017, 7:13 PM

Are you able to boot into the 4.9.20-12.lts kernel? It's not clear whether you upgraded the kernel and then booted into the previous kernel or not

ktw added a comment.Apr 4 2017, 6:12 PM

No, you are right, I am still on the old kernel for some reason.

sudo clr-boot-manager update ->
[FATAL] cbm (src/bootman/update.c:L85): Cannot determine boot device

I still have an Ubuntu installation which manages Grub, but updating this makes no difference.

ktw added a comment.EditedApr 4 2017, 6:18 PM

Can I force it to install and use the new kernel?
I have tried changing the version numbers in the boot parameters, but the system just fails to find kernel version 4.9.20-12.
(It is installed)

I would try this (it will show a more detailed output of the CBM to see if it is writing it correctly, though it can't mange the other OS's grub to load Solus correctly).

sudo eopkg install --reinstall linux-lts
sudo CBM_DEBUG=1 clr-boot-manager update

If you look at the contents in /boot, you should see both kernels together

The problem appears to be that X is trying to start with the Nvidia binary drivers (as they are installed for 4.19.20). 4.9.18 I believe doesn't have them (this won't be an issue in future as it will keep the older modules). 4.9.20 does have them. If you were to uninstall the nvidia drivers, then X would likely start

ktw added a comment.Apr 5 2017, 6:13 AM

It looks like the boot mangager is having trouble finding the boot device:

sudo eopkg install --reinstall linux-lts

Total size of package(s): 45.27 MB
Downloading 1 / 1
Package linux-lts found in repository Solus
linux-lts-4.9.20-12-1-x86_64.eopkg [cached]
Installing 1 / 1
linux-lts-4.9.20-12-1-x86_64.eopkg [cached]
Installing linux-lts, version 4.9.20, release 12
Running pre removal operations for linux-lts
Running post removal operations for linux-lts
Extracting the files of linux-lts
Configuring linux-lts package
Configured linux-lts
Installed linux-lts

sudo CBM_DEBUG=1 clr-boot-manager update

[INFO] cbm (src/bootman/bootman.c:L437): Current running kernel: 4.9.18-10.lts
[DEBUG] cbm (src/bootman/bootman.c:L124): UEFI boot now selected (goofiboot)
[INFO] cbm (src/bootman/update.c:L75): Checking for mounted boot dir
[FATAL] cbm (src/bootman/update.c:L85): Cannot determine boot device

dir /boot -a -l -s -R

/boot:
totalt 26280
4 drwxr-xr-x  4 root root     4096 28 mar 01:43 .
4 drwxr-xr-x 21 root root     4096 27 mar 19:24 ..
0 lrwxrwxrwx  1 root root        1  7 jan 22:35 boot -> .
6744 -rw-r--r--  1 root root  6903376 27 mar 19:24 com.solus-project.lts.4.9.18-10
16 drwxr-xr-x  4 root root    16384  1 jan  1970 efi
4 drwxr-xr-x  2 root root     4096 27 mar 19:24 grub
19508 -rw-r--r--  1 root root 19973450 27 mar 19:24 initrd-com.solus-project.lts.4.9.18-10

/boot/efi:
totalt 28
16 drwxr-xr-x 4 root root 16384  1 jan  1970 .
4 drwxr-xr-x 4 root root  4096 28 mar 01:43 ..
4 drwxr-xr-x 5 root root  4096  7 jan 22:39 EFI
4 drwxr-xr-x 3 root root  4096  7 jan 22:39 loader

/boot/efi/EFI:
totalt 32
4 drwxr-xr-x 5 root root  4096  7 jan 22:39 .
16 drwxr-xr-x 4 root root 16384  1 jan  1970 ..
4 drwxr-xr-x 2 root root  4096  7 jan 22:39 boot
4 drwxr-xr-x 2 root root  4096  7 jan 22:39 goofiboot
4 drwxr-xr-x 2 root root  4096  7 nov  2014 opensuse

/boot/efi/EFI/boot:
totalt 156
4 drwxr-xr-x 2 root root  4096  7 jan 22:39 .
4 drwxr-xr-x 5 root root  4096  7 jan 22:39 ..
84 -rwxr-xr-x 1 root root 85227 18 okt 02:00 bootx64.efi
64 -rwxr-xr-x 1 root root 62208  3 jan  2016 fallback.efi

/boot/efi/EFI/goofiboot:
totalt 92
4 drwxr-xr-x 2 root root  4096  7 jan 22:39 .
4 drwxr-xr-x 5 root root  4096  7 jan 22:39 ..
84 -rwxr-xr-x 1 root root 85227 18 okt 02:00 goofibootx64.efi

/boot/efi/EFI/opensuse:
totalt 3540
4 drwxr-xr-x 2 root root    4096  7 nov  2014 .
4 drwxr-xr-x 5 root root    4096  7 jan 22:39 ..
4 -rwxr-xr-x 1 root root      58  3 jan  2016 boot.csv
4 -rwxr-xr-x 1 root root     155  3 jan  2016 grub.cfg
900 -rwxr-xr-x 1 root root  918648  3 jan  2016 grub.efi
120 -rwxr-xr-x 1 root root  119296  3 jan  2016 grubx64.efi
1248 -rwxr-xr-x 1 root root 1276328  3 jan  2016 MokManager.efi
1256 -rwxr-xr-x 1 root root 1286112  3 jan  2016 shim.efi

/boot/efi/loader:
totalt 28
4 drwxr-xr-x 3 root root  4096  7 jan 22:39 .
16 drwxr-xr-x 4 root root 16384  1 jan  1970 ..
4 drwxr-xr-x 2 root root  4096 27 mar 19:23 entries
4 -rwxr-xr-x 1 root root    24  7 jan 22:39 loader.conf

/boot/efi/loader/entries:
totalt 8
4 drwxr-xr-x 2 root root 4096 27 mar 19:23 .
4 drwxr-xr-x 3 root root 4096  7 jan 22:39 ..

/boot/grub:
totalt 12
4 drwxr-xr-x 2 root root 4096 27 mar 19:24 .
4 drwxr-xr-x 4 root root 4096 28 mar 01:43 ..
4 -rw------- 1 root root 3818 27 mar 19:24 grub.cfg

It looks like I have some old openSUSE boot stuff in /boot/efi/EFI/opensuse.
I wonder if it's safe to delete this directory?

ktw added a comment.Apr 7 2017, 5:23 PM

Thank you very much for helping.

The method listed above did not work either.
But I have found and fixed the problem!

My system contains 3 drives, and the bios was not using the Solus one, in the EFI boot order.
I changed this, and now the new kernel is suddenly loaded :-)

I manually have to open the bios boot selector, if I need to access the Ubuntu installation, but who cares :-)
It's just for backup, and some occasional printing. (I have a Brother network printer - But that's another story... T83)

ktw closed this task as Resolved.Apr 7 2017, 5:24 PM
ktw added a comment.Apr 7 2017, 6:49 PM

By the way, I had to manually mount /dev/sda1 to /boot, for the sudo clr-boot-manager update command to run without errors.
(For anyone else having this issue)