Linux Mint 20 Driver installation fails - no module loaded

Hi!

I am trying to install proprietary nvidia drivers without success, tried the Driver Manager, directly installing from binary.

Actual outputs below, preceeded by removing all nvidia drivers, updating the system and using Driver Manager:
apt-get remove nvidia --purge
apt-get autoremove
apt-get autoclean
apt-get update
apt-get upgrade
reboot
nouveau driver successfully loaded
install 525 driver via Driver Manager

Issue:
Driver manager shows installed driver 525:

Although no driver module loaded.

lspci -k | grep 3D -A3

02:00.0 3D controller: NVIDIA Corporation GP108M [GeForce MX150] (rev a1)
DeviceName: Second VGA
Subsystem: ASUSTeK Computer Inc. GP108M [GeForce MX150]
Kernel modules: nvidiafb, nouveau, nvidia_drm, nvidia

nvidia-bug-report:
nvidia-bug-report.log.gz (122.3 KB)

Further info:

  • Secure boot disabled
  • Dual boot via Grub (Windows + Linux)
  • External monitor on HDMI

Please advise if I can make the driver work.

Thanks!
T.

Please run
sudo modprobe nvidia
and post any errors displayed.

sudo modprobe nvidia

modprobe: ERROR: could not insert ‘nvidia’: Exec format error

There seems to be something wrong with your build system/kernel headers so the modules are broken.
Please try uninstalling the nvidia driver, then reinstalling kernel headers
sudo apt install --reinstall linux-headers-$(uname -r)
and reinstall the nvidia driver.
Please post the output of
cc -v
and
ld -v

I have removed the nvidia drivers and tried to reinstall the headers, got the following error:

Reading package lists... Done
Building dependency tree       
Reading state information... Done
0 upgraded, 0 newly installed, 1 reinstalled, 0 to remove and 0 not upgraded.
Need to get 0 B/2.802 kB of archives.
After this operation, 0 B of additional disk space will be used.
(Reading database ... 729285 files and directories currently installed.)
Preparing to unpack .../linux-headers-5.15.0-60-generic_5.15.0-60.66~20.04.1_amd64.deb ...
Unpacking linux-headers-5.15.0-60-generic (5.15.0-60.66~20.04.1) over (5.15.0-60.66~20.04.1) ...
Setting up linux-headers-5.15.0-60-generic (5.15.0-60.66~20.04.1) ...
/etc/kernel/header_postinst.d/dkms:
 * dkms: running auto installation service for kernel 5.15.0-60-generic


Kernel preparation unnecessary for this kernel.  Skipping...

Building module:
cleaning build area...
make -j8 KERNELRELEASE=5.15.0-60-generic KVERSION=5.15.0-60-generic....(bad exit status: 2)
Error! Bad return status for module build on kernel: 5.15.0-60-generic (x86_64)
Consult /var/lib/dkms/rts_pstor/1.11/build/make.log for more information.
   ...done.

I have added the referenced make.log file:
make.log (1.3 KB)

Did not reinstall the nvidia-drivers, please let me know if I still should with this error.

Output of cc-v:

Using built-in specs.
COLLECT_GCC=cc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/9/lto-wrapper
OFFLOAD_TARGET_NAMES=nvptx-none:hsa
OFFLOAD_TARGET_DEFAULT=1
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu 9.4.0-1ubuntu1~20.04.1' --with-bugurl=file:///usr/share/doc/gcc-9/README.Bugs --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++,gm2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-9 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-9-Av3uEd/gcc-9-9.4.0/debian/tmp-nvptx/usr,hsa --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu
Thread model: posix
gcc version 9.4.0 (Ubuntu 9.4.0-1ubuntu1~20.04.1)

Output of ld -v:

GNU ld (GNU Binutils for Ubuntu) 2.34

T.

You have the rts_pstor driver for realtek cardreaders installed. That’s quite broken and has been an issue before. Please uninstall, then try again reinstalling the headers.

Ok, one step ahead, headers reinstalled successfully. Also installed the nvidia drivers, kernel driver is loaded.

lspci -k | grep 3D -A3

02:00.0 3D controller: NVIDIA Corporation GP108M [GeForce MX150] (rev a1)
	DeviceName: Second VGA
	Subsystem: ASUSTeK Computer Inc. GP108M [GeForce MX150]
	Kernel driver in use: nvidia

However nvidia-smi still throws an error:

Failed to initialize NVML: Driver/library version mismatch

cat Xorg.0.log | grep nvidia

[    13.312] (**) OutputClass "nvidia" ModulePath extended to "/usr/lib/x86_64-linux-gnu/nvidia/xorg,/usr/lib/xorg/modules"
[    13.338] (II) Applying OutputClass "nvidia" to /dev/dri/card1
[    13.338] 	loading driver: nvidia
[    13.509] (==) Matched nvidia as autoconfigured driver 0
[    13.509] (II) LoadModule: "nvidia"
[    13.509] (II) Loading /usr/lib/x86_64-linux-gnu/nvidia/xorg/nvidia_drv.so
[    13.519] (II) Module nvidia: vendor="NVIDIA Corporation"
[    14.032] (II) Applying OutputClass "nvidia" options to /dev/dri/card1
[    14.032] (II) Loading sub module "glxserver_nvidia"
[    14.032] (II) LoadModule: "glxserver_nvidia"
[    14.032] (II) Loading /usr/lib/x86_64-linux-gnu/nvidia/xorg/libglxserver_nvidia.so
[    14.093] (II) Module glxserver_nvidia: vendor="NVIDIA Corporation"
[    14.479] (II) NVIDIA(G0): [DRI2]   VDPAU driver: nvidia

Might be some leftover libraries from the runfile install you did at a previous time. Please post the output of
ls -l /usr/lib/x86_64-linux-gnu/libnvidia* /usr/lib/x86_64-linux-gnu/libcuda*

Yep, that will be the problem: 525.78.01 and 525.85.12 is mixed. How could I clean that out?

ls -l /usr/lib/x86_64-linux-gnu/libnvidia* /usr/lib/x86_64-linux-gnu/libcuda*

lrwxrwxrwx 1 root root        28 jan    4 17:52 /usr/lib/x86_64-linux-gnu/libcudadebugger.so.1 -> libcudadebugger.so.525.78.01
-rw-r--r-- 1 root root  10490248 dec   26 06:36 /usr/lib/x86_64-linux-gnu/libcudadebugger.so.525.78.01
lrwxrwxrwx 1 root root        12 jan    4 17:52 /usr/lib/x86_64-linux-gnu/libcuda.so -> libcuda.so.1
lrwxrwxrwx 1 root root        20 febr  10 00:19 /usr/lib/x86_64-linux-gnu/libcuda.so.1 -> libcuda.so.525.85.12
-rw-r--r-- 1 root root  29826984 dec   26 07:06 /usr/lib/x86_64-linux-gnu/libcuda.so.525.78.01
-rw-r--r-- 1 root root  29863848 jan   28 03:21 /usr/lib/x86_64-linux-gnu/libcuda.so.525.85.12
lrwxrwxrwx 1 root root        24 jan    4 17:52 /usr/lib/x86_64-linux-gnu/libnvidia-allocator.so -> libnvidia-allocator.so.1
lrwxrwxrwx 1 root root        32 febr  10 00:19 /usr/lib/x86_64-linux-gnu/libnvidia-allocator.so.1 -> libnvidia-allocator.so.525.85.12
-rw-r--r-- 1 root root    152120 dec   26 06:37 /usr/lib/x86_64-linux-gnu/libnvidia-allocator.so.525.78.01
-rw-r--r-- 1 root root    152120 jan   28 03:01 /usr/lib/x86_64-linux-gnu/libnvidia-allocator.so.525.85.12
lrwxrwxrwx 1 root root        18 jan    4 17:52 /usr/lib/x86_64-linux-gnu/libnvidia-cfg.so -> libnvidia-cfg.so.1
lrwxrwxrwx 1 root root        26 febr  10 00:19 /usr/lib/x86_64-linux-gnu/libnvidia-cfg.so.1 -> libnvidia-cfg.so.525.85.12
-rw-r--r-- 1 root root    258416 dec   26 06:37 /usr/lib/x86_64-linux-gnu/libnvidia-cfg.so.525.78.01
-rw-r--r-- 1 root root    258416 jan   28 03:01 /usr/lib/x86_64-linux-gnu/libnvidia-cfg.so.525.85.12
-rw-r--r-- 1 root root  56309912 dec   26 07:14 /usr/lib/x86_64-linux-gnu/libnvidia-compiler.so.525.78.01
-rw-r--r-- 1 root root  56309912 jan   28 03:30 /usr/lib/x86_64-linux-gnu/libnvidia-compiler.so.525.85.12
-rw-r--r-- 1 root root  42054840 dec   26 07:08 /usr/lib/x86_64-linux-gnu/libnvidia-eglcore.so.525.78.01
-rw-r--r-- 1 root root  42054840 jan   28 03:33 /usr/lib/x86_64-linux-gnu/libnvidia-eglcore.so.525.85.12
lrwxrwxrwx 1 root root        26 febr  10 00:19 /usr/lib/x86_64-linux-gnu/libnvidia-egl-gbm.so.1 -> libnvidia-egl-gbm.so.1.1.0
-rw-r--r-- 1 root root     22656 dec   26 06:40 /usr/lib/x86_64-linux-gnu/libnvidia-egl-gbm.so.1.1.0
lrwxrwxrwx 1 root root        21 jan    4 17:52 /usr/lib/x86_64-linux-gnu/libnvidia-encode.so -> libnvidia-encode.so.1
lrwxrwxrwx 1 root root        29 febr  10 00:19 /usr/lib/x86_64-linux-gnu/libnvidia-encode.so.1 -> libnvidia-encode.so.525.85.12
-rw-r--r-- 1 root root    198720 dec   26 06:38 /usr/lib/x86_64-linux-gnu/libnvidia-encode.so.525.78.01
-rw-r--r-- 1 root root    198720 jan   28 03:01 /usr/lib/x86_64-linux-gnu/libnvidia-encode.so.525.85.12
lrwxrwxrwx 1 root root        18 jan    4 17:52 /usr/lib/x86_64-linux-gnu/libnvidia-fbc.so -> libnvidia-fbc.so.1
lrwxrwxrwx 1 root root        26 febr  10 00:19 /usr/lib/x86_64-linux-gnu/libnvidia-fbc.so.1 -> libnvidia-fbc.so.525.85.12
-rw-r--r-- 1 root root    133816 dec   26 06:37 /usr/lib/x86_64-linux-gnu/libnvidia-fbc.so.525.78.01
-rw-r--r-- 1 root root    133816 jan   28 03:01 /usr/lib/x86_64-linux-gnu/libnvidia-fbc.so.525.85.12
-rw-r--r-- 1 root root  44278520 dec   26 07:15 /usr/lib/x86_64-linux-gnu/libnvidia-glcore.so.525.78.01
-rw-r--r-- 1 root root  44282616 jan   28 03:39 /usr/lib/x86_64-linux-gnu/libnvidia-glcore.so.525.85.12
-rw-r--r-- 1 root root    648136 dec   26 06:38 /usr/lib/x86_64-linux-gnu/libnvidia-glsi.so.525.78.01
-rw-r--r-- 1 root root    648136 jan   28 03:02 /usr/lib/x86_64-linux-gnu/libnvidia-glsi.so.525.85.12
-rw-r--r-- 1 root root  25052888 dec   26 07:19 /usr/lib/x86_64-linux-gnu/libnvidia-glvkspirv.so.525.78.01
-rw-r--r-- 1 root root  25056984 jan   28 03:40 /usr/lib/x86_64-linux-gnu/libnvidia-glvkspirv.so.525.85.12
lrwxrwxrwx 1 root root        17 jan    4 17:52 /usr/lib/x86_64-linux-gnu/libnvidia-ml.so -> libnvidia-ml.so.1
lrwxrwxrwx 1 root root        25 febr  10 00:19 /usr/lib/x86_64-linux-gnu/libnvidia-ml.so.1 -> libnvidia-ml.so.525.85.12
-rw-r--r-- 1 root root   1798712 dec   26 06:39 /usr/lib/x86_64-linux-gnu/libnvidia-ml.so.525.78.01
-rw-r--r-- 1 root root   1798712 jan   28 03:02 /usr/lib/x86_64-linux-gnu/libnvidia-ml.so.525.85.12
lrwxrwxrwx 1 root root        26 febr   8 02:08 /usr/lib/x86_64-linux-gnu/libnvidia-ngx.so.1 -> libnvidia-ngx.so.525.85.12
-rw-r--r-- 1 root root   3310152 dec   26 06:39 /usr/lib/x86_64-linux-gnu/libnvidia-ngx.so.525.78.01
-rw-r--r-- 1 root root   3310216 jan   28 03:02 /usr/lib/x86_64-linux-gnu/libnvidia-ngx.so.525.85.12
lrwxrwxrwx 1 root root        19 jan    4 17:52 /usr/lib/x86_64-linux-gnu/libnvidia-nvvm.so -> libnvidia-nvvm.so.4
lrwxrwxrwx 1 root root        27 febr  10 00:19 /usr/lib/x86_64-linux-gnu/libnvidia-nvvm.so.4 -> libnvidia-nvvm.so.525.85.12
-rw-r--r-- 1 root root  92209888 dec   26 07:34 /usr/lib/x86_64-linux-gnu/libnvidia-nvvm.so.525.78.01
-rw-r--r-- 1 root root  92209888 jan   28 03:52 /usr/lib/x86_64-linux-gnu/libnvidia-nvvm.so.525.85.12
lrwxrwxrwx 1 root root        29 febr  10 00:19 /usr/lib/x86_64-linux-gnu/libnvidia-opencl.so.1 -> libnvidia-opencl.so.525.85.12
-rw-r--r-- 1 root root  22950352 dec   26 07:06 /usr/lib/x86_64-linux-gnu/libnvidia-opencl.so.525.78.01
-rw-r--r-- 1 root root  22991312 jan   28 03:22 /usr/lib/x86_64-linux-gnu/libnvidia-opencl.so.525.85.12
lrwxrwxrwx 1 root root        26 jan    4 17:52 /usr/lib/x86_64-linux-gnu/libnvidia-opticalflow.so -> libnvidia-opticalflow.so.1
lrwxrwxrwx 1 root root        34 febr  10 00:19 /usr/lib/x86_64-linux-gnu/libnvidia-opticalflow.so.1 -> libnvidia-opticalflow.so.525.85.12
-rw-r--r-- 1 root root     67584 dec   26 06:39 /usr/lib/x86_64-linux-gnu/libnvidia-opticalflow.so.525.78.01
-rw-r--r-- 1 root root     67584 jan   28 03:01 /usr/lib/x86_64-linux-gnu/libnvidia-opticalflow.so.525.85.12
lrwxrwxrwx 1 root root        29 jan    4 17:52 /usr/lib/x86_64-linux-gnu/libnvidia-ptxjitcompiler.so -> libnvidia-ptxjitcompiler.so.1
lrwxrwxrwx 1 root root        37 febr  10 00:19 /usr/lib/x86_64-linux-gnu/libnvidia-ptxjitcompiler.so.1 -> libnvidia-ptxjitcompiler.so.525.85.12
-rw-r--r-- 1 root root  20723096 dec   26 06:53 /usr/lib/x86_64-linux-gnu/libnvidia-ptxjitcompiler.so.525.78.01
-rw-r--r-- 1 root root  20727192 jan   28 03:13 /usr/lib/x86_64-linux-gnu/libnvidia-ptxjitcompiler.so.525.85.12
-rw-r--r-- 1 root root 118072320 dec   26 07:32 /usr/lib/x86_64-linux-gnu/libnvidia-rtcore.so.525.78.01
-rw-r--r-- 1 root root 118076416 jan   28 03:54 /usr/lib/x86_64-linux-gnu/libnvidia-rtcore.so.525.85.12
-rw-r--r-- 1 root root     18528 dec   26 06:37 /usr/lib/x86_64-linux-gnu/libnvidia-tls.so.525.78.01
-rw-r--r-- 1 root root     18528 jan   28 03:00 /usr/lib/x86_64-linux-gnu/libnvidia-tls.so.525.85.12

That’s quite odd 525.85.12 is not a normal graphics driver, where did you install it from? A cuda runfile?

Yes.

Ok, then please only extract the cuda runfile by running it with -x option. In the directory that will be created, there should be the 525.85.12 driver runfile.
First, please uninstall the packaged driver, then run the 525.85.12 driver runfile with -b option and immediately afterwards again with --uninstall option.
Check
ls -l /usr/lib/x86_64-linux-gnu/libnvidia* /usr/lib/x86_64-linux-gnu/libcuda*
that no nvidia files are installed anymore, then reinstall the packaged driver.

It worked!

Thank you very much for your help and support cleaning up the mess I stumbled together!

T.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.