Nvidia 304.134 legacy Geforce 6/7: kernel module load error, unknown symbol mtrr_del

Hi folks,

Still NVidia driver problem…

Fresh Leap 42.2 setup on a Dell XPS 1710 notebook (Geforce Go 7950 GTX).

Kernel 4.4.36-8-default, nouveau blacklisted in /etc/modprobe.d and nomodeset kernel parameter in grub.

I downloaded the brand new legacy 304.134 driver from nvidia.com today.

The installer gave me an error, that the kernel module nvidia.ko is unable to load.

/var/log/nvidia-installer.log shows “Unknown symbol mtrr_del”.

Last part of the log file:

-> done.
-> Kernel module compilation complete.
ERROR: Unable to load the kernel module 'nvidia.ko'.  This happens most frequently when this kernel module was built against the wrong or improperly configured kernel sources, with a version of gcc that differs from the one used to build the target kernel, or if a driver such as rivafb, nvidiafb, or nouveau is present and prevents the NVIDIA kernel module from obtaining ownership of the NVIDIA graphics device(s), or NVIDIA GPU installed in this system is not supported by this NVIDIA Linux graphics driver release.

Please see the log entries 'Kernel module load error' and 'Kernel messages' at the end of the file '/var/log/nvidia-installer.log' for more information.
-> Kernel module load error: insmod: ERROR: could not insert module ./kernel/nvidia.ko: Unknown symbol in module
-> Kernel messages:
   46.750212] audit: type=1400 audit(1481849233.350:23): apparmor="STATUS" operation="profile_load" name="/usr/lib/dovecot/log" pid=1850 comm="apparmor_parser"
   46.928576] audit: type=1400 audit(1481849233.530:24): apparmor="STATUS" operation="profile_load" name="/usr/lib/dovecot/managesieve" pid=1866 comm="apparmor_parser"
   47.038368] EXT4-fs (sda2): mounted filesystem with ordered data mode. Opts: acl,user_xattr
   47.061073] audit: type=1400 audit(1481849233.662:25): apparmor="STATUS" operation="profile_load" name="/usr/lib/dovecot/managesieve-login" pid=1877 comm="apparmor_parser"
   47.140800] EXT4-fs (dm-3): mounted filesystem with ordered data mode. Opts: acl,user_xattr
   50.058614] ip6_tables: (C) 2000-2006 Netfilter Core Team
   50.166743] nf_conntrack version 0.5.0 (16384 buckets, 65536 max)
   50.211126] ip_tables: (C) 2000-2006 Netfilter Core Team
   56.083612] tg3 0000:09:00.0 eth0: Link is up at 1000 Mbps, full duplex
   56.083621] tg3 0000:09:00.0 eth0: Flow control is on for TX and on for RX
   56.281515] NET: Registered protocol family 17
   62.973487] FS-Cache: Loaded
   62.983078] Key type dns_resolver registered
   63.118687] FS-Cache: Netfs 'cifs' registered for caching
   63.118734] Key type cifs.spnego registered
   63.118743] Key type cifs.idmap registered
  105.989141] nf_conntrack: automatic helper assignment is deprecated and it will be removed soon. Use the iptables CT target to attach helpers instead.
  183.590248] st: Version 20160209, fixed bufsize 32768, s/g segs 256
  183.752704] BIOS EDD facility v0.16 2004-Jun-25, 0 devices found
  183.752707] EDD information not available.
  187.829682] nvidia: loading out-of-tree module taints kernel.
  187.829697] nvidia: module license 'NVIDIA' taints kernel.
  187.829698] Disabling lock debugging due to kernel taint
  187.847190] nvidia: Unknown symbol mtrr_del (err 0)
  187.847461] nvidia: Unknown symbol mtrr_add (err 0)
ERROR: Installation has failed.  Please see the file '/var/log/nvidia-installer.log' for details.  You may find suggestions on fixing installation problems in the README available on the Linux driver download page at www.nvidia.com.

So this is the same situation as before with the 304.132 driver. Same issues. I can’t get the nvidia driver working in 42.1 and 42.2, no matter if I use 304.132 (which has a known regression) or the new legacy 304.134. It seems that the regression still exits in the 304.134 driver.

So for me Leap 42.2 is not usable, because nouveau still is not an option for me.

Any ideas or knowledge about the issues with the new 304.134? I still would like to keep my old working horse


Kernel needs a patch, see comment #6 with what to do, should work for you…

On Fri 16 Dec 2016 02:06:02 AM CST, malcolmlewis wrote:

Kernel needs a patch, see comment #6 with what to do, should work for

You can also apply the patch like;

chmod 0755 NVIDIA-Linux-x86_64-304.134.run
../NVIDIA-Linux-x86_64-304.134.run --apply-patch nvidia_mtrr_k4_3.patch.gz
Verifying archive integrity... OK
Uncompressing NVIDIA Accelerated Graphics Driver for Linux-x86_64
can't find file to patch at input line 3 Perhaps you used the wrong -p
or --strip option? The text leading up to this was:
|--- a/nv-linux.h
|+++ b/nv-linux.h
File to patch: kernel/nv-linux.h
patching file kernel/nv-linux.h
patch unexpectedly ends in middle of line
Hunk #1 succeeded at 254 with fuzz 1 (offset -2 lines).
Adding files to archive named
"NVIDIA-Linux-x86_64-304.134-custom.run"... ./32/

CRC: 2546165736
MD5: 0329253664108868c01f5cbc271cd551

Self-extractible archive "NVIDIA-Linux-x86_64-304.134-custom.run"
successfully created.

Then run the custom installer.

Cheers Malcolm °¿° SUSE Knowledge Partner (Linux Counter #276890)
openSUSE Leap 42.1|GNOME 3.16.2|4.1.36-41-default
If you find this post helpful and are logged into the web interface,
please show your appreciation and click on the star below… Thanks!

Hi malcolmlewis,

thx a lot for your hint. The patch worked for me with 304.134 on Leap 42.2. I used your method to apply the patch.

I don’t understand, why NVidia did not fix this issue in the new 304.134 release. It’s a show stopper for some unexperienced users. It should also have been mentioned in the Leap 42.2 release notes.

I hope a fixed/patched driver will turn up in the NVidia leap repository soon. The NVidia-repo is still on unpatched 304.132…

Again thx…

Problem arose at about release time so unknown when notes were made