The symptoms
Nvidia kernel drivers were not loaded after kernel update.The problem
The package nvidia-gfxG04-kmp-default-367.35_k4.1.12_1-25.1.x86_64 runs a script that regenerates the kernel drivers and creates symlinks in /lib/modules/4.1.27-27-default/weak-updates/updates. After running:# zypper in --force $(rpm -qa "nvidia-gfx*kmp*")
I noticed that the links were not beeing generated:
# zypper in --force $(rpm -qa "nvidia-gfx*kmp*")
Retrieving repository 'network:utilities' metadata ..........................................................................................................[done]
Building repository 'network:utilities' cache ...............................................................................................................[done]
Loading repository data...
Reading installed packages...
Forcing installation of 'nvidia-gfxG04-kmp-default-367.35_k4.1.12_1-25.1.x86_64' from repository 'nVidia Graphics Drivers'.
Resolving package dependencies...
The following package is going to be reinstalled:
nvidia-gfxG04-kmp-default
1 package to reinstall.
Overall download size: 5.8 MiB. Already cached: 0 B. No additional space will be used or freed after the operation.
Continue? [y/n/? shows all options] (y):
Retrieving package nvidia-gfxG04-kmp-default-367.35_k4.1.12_1-25.1.x86_64 (1/1), 5.8 MiB ( 64.6 MiB unpacked)
Retrieving: nvidia-gfxG04-kmp-default-367.35_k4.1.12_1-25.1.x86_64.rpm ..........................................................................[done (2.2 MiB/s)]
Checking for file conflicts: ................................................................................................................................[done]
(1/1) Installing: nvidia-gfxG04-kmp-default-367.35_k4.1.12_1-25.1.x86_64 ....................................................................................[done]
Additional rpm output:
make: Entering directory '/usr/src/linux-4.1.27-27-obj/x86_64/default'
Building modules, stage 2.
MODPOST 0 modules
make: Leaving directory '/usr/src/linux-4.1.27-27-obj/x86_64/default'
/usr/src/kernel-modules/nvidia-367.35-default /
make "CC=cc" KBUILD_OUTPUT=/usr/src/linux-obj/x86_64/default KBUILD_VERBOSE= -C /lib/modules/4.1.27-27-default/source M=/usr/src/kernel-modules/nvidia-367.35-default ARCH=x86_64 NV_KERNEL_SOURCES=/lib/modules/4.1.27-27-default/source NV_KERNEL_OUTPUT=/usr/src/linux-obj/x86_64/default NV_KERNEL_MODULES="nvidia nvidia-uvm nvidia-modeset nvidia-drm" INSTALL_MOD_DIR=kernel/drivers/video modules
make[1]: Entering directory '/usr/src/linux-4.1.27-27'
make[2]: Entering directory '/usr/src/linux-4.1.27-27-obj/x86_64/default'
Building modules, stage 2.
MODPOST 4 modules
make[2]: Leaving directory '/usr/src/linux-4.1.27-27-obj/x86_64/default'
make[1]: Leaving directory '/usr/src/linux-4.1.27-27'
ld -T /lib/modules/4.1.27-27-default/source/scripts/module-common.lds -r -o nv-linux.o \
nvidia.mod.o nvidia/nv-interface.o
/
Modprobe blacklist files have been created at /etc/modprobe.d to prevent Nouveau from loading. This can be reverted by deleting /etc/modprobe.d/nvidia-*.conf.
*** Reboot your computer and verify that the NVIDIA graphics driver can be loaded. ***
depmod: WARNING: //lib/modules/4.1.27-27-default/misc/vboxvideo.ko disagrees about version of symbol VBoxGuest_RTLogBackdoorPrintf
depmod: WARNING: //lib/modules/4.1.27-27-default/misc/vboxvideo.ko disagrees about version of symbol VBoxGuest_RTErrConvertToErrno
depmod: WARNING: //lib/modules/4.1.27-27-default/misc/vboxvideo.ko disagrees about version of symbol VBoxGuest_RTAssertShouldPanic
depmod: WARNING: //lib/modules/4.1.27-27-default/misc/vboxvideo.ko disagrees about version of symbol VBoxGuest_RTAssertMsg1Weak
depmod: WARNING: //lib/modules/4.1.27-27-default/misc/vboxvideo.ko disagrees about version of symbol VBoxGuest_RTAssertMsg2Weak
Warning: /lib/modules/4.1.27-27-default is inconsistent
Warning: weak-updates symlinks might not be created
Output of nvidia-gfxG04-kmp-default-367.35_k4.1.12_1-25.1.x86_64.rpm %posttrans script:
Creating initrd: /boot/initrd-4.1.12-1-default
Executing: /usr/bin/dracut --logfile /var/log/YaST2/mkinitrd.log --force --force-drivers "nvidia -drm" /boot/initrd-4.1.12-1-default 4.1.12-1-default
*** Including module: bash ***
*** Including module: warpclock ***
*** Including module: i18n ***
*** Including module: ifcfg ***
*** Including module: drm ***
*** Including module: plymouth ***
*** Including module: kernel-modules ***
Omitting driver i2o_scsi
*** Including module: resume ***
*** Including module: rootfs-block ***
*** Including module: terminfo ***
*** Including module: udev-rules ***
Skipping udev rule: 91-permissions.rules
Skipping udev rule: 80-drivers-modprobe.rules
*** Including module: haveged ***
*** Including module: systemd ***
*** Including module: usrmount ***
*** Including module: base ***
*** Including module: fs-lib ***
*** Including module: shutdown ***
*** Including module: suse ***
*** Including modules done ***
*** Installing kernel module dependencies and firmware ***
*** Installing kernel module dependencies and firmware done ***
*** Resolving executable dependencies ***
*** Resolving executable dependencies done***
*** Hardlinking files ***
*** Hardlinking files done ***
*** Stripping files ***
*** Stripping files done ***
*** Generating early-microcode cpio image ***
*** Constructing GenuineIntel.bin ****
*** Store current command line parameters ***
Stored kernel commandline:
rd.driver.pre=nvidia
rd.driver.pre=_drm
resume=UUID=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
root=UUID=xxxxxxxxxxxxxxxxxxxxxx rootflags=rw,relatime,data=ordered rootfstype=ext4
*** Creating image file ***
*** Creating image file done ***
Some kernel modules could not be included
This is not necessarily an error:
swap
_drm
Update bootloader...
Creating initrd: /boot/initrd-4.1.27-24-default
Executing: /usr/bin/dracut --logfile /var/log/YaST2/mkinitrd.log --force --force-drivers "nvidia -drm" /boot/initrd-4.1.27-24-default 4.1.27-24-default
*** Including module: bash ***
*** Including module: warpclock ***
*** Including module: i18n ***
*** Including module: ifcfg ***
*** Including module: drm ***
*** Including module: plymouth ***
*** Including module: kernel-modules ***
Omitting driver i2o_scsi
*** Including module: resume ***
*** Including module: rootfs-block ***
*** Including module: terminfo ***
*** Including module: udev-rules ***
Skipping udev rule: 91-permissions.rules
Skipping udev rule: 80-drivers-modprobe.rules
*** Including module: haveged ***
*** Including module: systemd ***
*** Including module: usrmount ***
*** Including module: base ***
*** Including module: fs-lib ***
*** Including module: shutdown ***
*** Including module: suse ***
*** Including modules done ***
*** Installing kernel module dependencies and firmware ***
*** Installing kernel module dependencies and firmware done ***
*** Resolving executable dependencies ***
*** Resolving executable dependencies done***
*** Hardlinking files ***
*** Hardlinking files done ***
*** Stripping files ***
*** Stripping files done ***
*** Generating early-microcode cpio image ***
*** Constructing GenuineIntel.bin ****
*** Store current command line parameters ***
Stored kernel commandline:
rd.driver.pre=nvidia
rd.driver.pre=_drm
resume=UUID=xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
root=UUID=xxxxxxxxxxxxxxxxxxxxxxx rootflags=rw,relatime,data=ordered rootfstype=ext4
*** Creating image file ***
*** Creating image file done ***
Some kernel modules could not be included
This is not necessarily an error:
swap
_drm
Update bootloader...
The solution
Uninstall the virtualbox guest packages: virtualbox-guest-kmp-default, virtualbox-guest-tools and virtualbox-guest-x11 and rerun # zypper in --force $(rpm -qa "nvidia-gfx*kmp*") as root. After that, the links are created as follows:/lib/modules/4.1.27-27-default/weak-updates/updates # l
total 8
drwxr-xr-x 2 root root 4096 Aug 1 15:41 ./
drwxr-xr-x 4 root root 4096 Jul 21 19:03 ../
lrwxrwxrwx 1 root root 51 Aug 1 15:41 nvidia-drm.ko -> /lib/modules/4.1.12-1-default/updates/nvidia-drm.ko
lrwxrwxrwx 1 root root 55 Aug 1 15:41 nvidia-modeset.ko -> /lib/modules/4.1.12-1-default/updates/nvidia-modeset.ko
lrwxrwxrwx 1 root root 51 Aug 1 15:41 nvidia-uvm.ko -> /lib/modules/4.1.12-1-default/updates/nvidia-uvm.ko
lrwxrwxrwx 1 root root 47 Aug 1 15:41 nvidia.ko -> /lib/modules/4.1.12-1-default/updates/nvidia.ko