304.135 driver patched to build on 4.x kernels (4.9 onwards)

Updated 304.132 driver does not load on kernel 4.7.5

nvidia: Unknown symbol mtrr_del (err 0)
nvidia: Unknown symbol mtrr_add (err 0)

Would appear that the patch to allow compilation for kernels > 4.3 has not been applied…

see: [url]Nvidia drivers - Page 6 - (old)Puppy Linux Discussion Forum

Patched .run uploaded to:
https://sourceforge.net/projects/lxpup/files/Other/nvidia/NVIDIA-Linux-x86-304.132-patched-mtrr.run/download

Patch applied:

--- kernel/nv-linux.h
+++ kernel/nv-linux.h
@@ -256,6 +256,15 @@
 #include <linux/seq_file.h>
 #endif
 
+/*
+ * As of version 304.131, os-agp.c and os-mtrr.c still use deprecated
+ * kernel APIs for mtrr which are no longer exported since 4.3, causing
+ * the module to error out when loaded.
+ */
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(4,3,0)
+#undef CONFIG_MTRR
+#endif
+
 #if !defined(NV_VMWARE) && defined(CONFIG_MTRR)
 #include <asm/mtrr.h>
 #endif

Hello,
Can you please patch the x86_64 version as well?

@amitp

I can probably create the patched .run - but would need somebody else to then make the driver and test it - are you able to do this??

There are 2 .run for 64 bit - which is required??

[url]ftp://download.nvidia.com/XFree86/Linux-x86_64/304.132/[/url]

Peabee,

I will be able to install the patched NVIDIA-Linux-x86_64-304.132.run and see if it works.

Please test and report:

NVIDIA-Linux-x86_64-304.132-patched-mtrr.run

Thank you for your quick prompt.

I use the following guide to install the driver on my fresh Ubuntu 16.04 LTS 64bit on my Gigabyte GA-73PVM-S2H motherboard.

This board has Nvidia GeForce 7100/nForce 630i on-board.

Installation when fine, unlike the unpatched version (see installation log):

nvidia-installer log file '/var/log/nvidia-installer.log'
creation time: Sat Oct 22 13:04:18 2016
installer version: 304.132

PATH: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

nvidia-installer command line:
    ./nvidia-installer

Unable to load: nvidia-installer ncurses v6 user interface

Using: nvidia-installer ncurses user interface
-> License accepted.
-> Installing NVIDIA driver version 304.132.
-> Running distribution scripts
   executing: '/usr/lib/nvidia/pre-install'...
-> done.
-> The distribution-provided pre-install script failed!  Continue installation anyway? (Answer: Yes)
-> Would you like to register the kernel module sources with DKMS? This will allow DKMS to automatically build a new module, if you install a different kernel later. (Answer: Yes)
-> Installing both new and classic TLS OpenGL libraries.
-> Installing both new and classic TLS 32bit OpenGL libraries.
-> Install NVIDIA's 32-bit compatibility OpenGL libraries? (Answer: No)
-> Searching for conflicting X files:
-> done.
-> Searching for conflicting OpenGL files:
-> done.
-> Installing 'NVIDIA Accelerated Graphics Driver for Linux-x86_64' (304.132):
   executing: '/sbin/ldconfig'...
   executing: '/sbin/depmod -aq'...
   depmod: WARNING: Ignored deprecated option -q
-> done.
-> Driver file installation is complete.
-> Installing DKMS kernel module:
-> done.
-> Running post-install sanity check:
-> done.
-> Post-install sanity check passed.
-> Shared memory test passed.
-> Running runtime sanity check:
-> done.
-> Runtime sanity check passed.
-> Would you like to run the nvidia-xconfig utility to automatically update your X configuration file so that the NVIDIA X driver will be used when you restart X?  Any pre-existing X configuration file will be backed up. (Answer: Yes)
-> Your X configuration file has been successfully updated.  Installation of the NVIDIA Accelerated Graphics Driver for Linux-x86_64 (version: 304.132) is now complete.

but while the lightdm tries to do automatic login it is unsuccessful and getting back to login screen.

dmesg output is:

[   14.188042] floppy0: no floppy controllers found
[   14.265182] Adding 1830908k swap on /dev/sda5.  Priority:-1 extents:1 across:1830908k FS
[   14.274605] audit: type=1400 audit(1477130808.929:2): apparmor="STATUS" operation="profile_load" profile="unconfined" name="/sbin/dhclient" pid=1942 comm="apparmor_parser"
[   14.274613] audit: type=1400 audit(1477130808.929:3): apparmor="STATUS" operation="profile_load" profile="unconfined" name="/usr/lib/NetworkManager/nm-dhcp-client.action" pid=1942 comm="apparmor_parser"
[   14.274619] audit: type=1400 audit(1477130808.929:4): apparmor="STATUS" operation="profile_load" profile="unconfined" name="/usr/lib/NetworkManager/nm-dhcp-helper" pid=1942 comm="apparmor_parser"
[   14.274623] audit: type=1400 audit(1477130808.929:5): apparmor="STATUS" operation="profile_load" profile="unconfined" name="/usr/lib/connman/scripts/dhclient-script" pid=1942 comm="apparmor_parser"
[   14.623623] audit: type=1400 audit(1477130809.277:6): apparmor="STATUS" operation="profile_load" profile="unconfined" name="/usr/lib/lightdm/lightdm-guest-session" pid=1941 comm="apparmor_parser"
[   14.623636] audit: type=1400 audit(1477130809.277:7): apparmor="STATUS" operation="profile_load" profile="unconfined" name="/usr/lib/lightdm/lightdm-guest-session//chromium" pid=1941 comm="apparmor_parser"
[   14.645760] audit: type=1400 audit(1477130809.301:8): apparmor="STATUS" operation="profile_load" profile="unconfined" name="/usr/bin/ubuntu-core-launcher" pid=1995 comm="apparmor_parser"
[   14.766898] nvidia: module license 'NVIDIA' taints kernel.
[   14.766902] Disabling lock debugging due to kernel taint
[   14.785734] nvidia: module verification failed: signature and/or required key missing - tainting kernel
[   14.793167] ACPI: PCI Interrupt Link [AIGP] enabled at IRQ 22
[   14.793195] vgaarb: device changed decodes: PCI:0000:00:10.0,olddecodes=io+mem,decodes=none:owns=io+mem
[   14.793932] [drm] Initialized nvidia-drm 0.0.0 20150116 for 0000:00:10.0 on minor 0
[   14.793942] NVRM: loading NVIDIA UNIX x86_64 Kernel Module  304.132  Fri Sep 16 11:02:09 PDT 2016
[   14.963450] audit: type=1400 audit(1477130809.617:9): apparmor="STATUS" operation="profile_load" profile="unconfined" name="webbrowser-app" pid=1996 comm="apparmor_parser"
[   14.963463] audit: type=1400 audit(1477130809.617:10): apparmor="STATUS" operation="profile_load" profile="unconfined" name="webbrowser-app//oxide_helper" pid=1996 comm="apparmor_parser"
[   15.012944] audit: type=1400 audit(1477130809.669:11): apparmor="STATUS" operation="profile_load" profile="unconfined" name="/usr/bin/evince" pid=1993 comm="apparmor_parser"
[   15.879766] input: HDA NVidia Rear Mic as /devices/pci0000:00/0000:00:09.0/sound/card0/input8
[   15.879845] input: HDA NVidia Front Mic as /devices/pci0000:00/0000:00:09.0/sound/card0/input9
[   15.879913] input: HDA NVidia Line as /devices/pci0000:00/0000:00:09.0/sound/card0/input10
[   15.879978] input: HDA NVidia Line Out Front as /devices/pci0000:00/0000:00:09.0/sound/card0/input11
[   15.880121] input: HDA NVidia Line Out Surround as /devices/pci0000:00/0000:00:09.0/sound/card0/input12
[   15.880192] input: HDA NVidia Line Out CLFE as /devices/pci0000:00/0000:00:09.0/sound/card0/input13
[   15.880262] input: HDA NVidia Line Out Side as /devices/pci0000:00/0000:00:09.0/sound/card0/input14
[   23.479263] IPv6: ADDRCONF(NETDEV_UP): enp0s15: link is not ready
[   23.479782] forcedeth 0000:00:0f.0 enp0s15: MSI enabled
[   26.311277] NVRM: Your system is not currently configured to drive a VGA console
[   26.311280] NVRM: on the primary VGA device. The NVIDIA Linux graphics driver
[   26.311282] NVRM: requires the use of a text-mode VGA console. Use of other console
[   26.311283] NVRM: drivers including, but not limited to, vesafb, may result in
[   26.311285] NVRM: corruption and stability problems, and is not supported.
[   31.545396] show_signal_msg: 33 callbacks suppressed
[   31.545404] ibus-ui-gtk3[2644]: segfault at 7ffd9c53cff8 ip 00007f10853985f9 sp 00007ffd9c53d000 error 6 in libc-2.23.so[7f108531d000+1c0000]

/var/log/Xorg.0.log shows:

[  1397.485]
X.Org X Server 1.18.3
Release Date: 2016-04-04
[  1397.485] X Protocol Version 11, Revision 0
[  1397.485] Build Operating System: Linux 3.13.0-86-generic x86_64 Ubuntu
[  1397.485] Current Operating System: Linux media-center 4.4.0-45-generic #66-Ubuntu SMP Wed Oct 19 14:12:37 UTC 2016 x86_64
[  1397.485] Kernel command line: BOOT_IMAGE=/boot/vmlinuz-4.4.0-45-generic root=UUID=a64d892f-ea1b-4a40-a3e0-0d46a1fb4746 ro quiet splash vt.handoff=7
[  1397.485] Build Date: 18 May 2016  01:07:07AM
[  1397.485] xorg-server 2:1.18.3-1ubuntu2.2 (For technical support please see http://www.ubuntu.com/support)
[  1397.485] Current version of pixman: 0.33.6
[  1397.485]    Before reporting problems, check http://wiki.x.org
        to make sure that you have the latest version.
[  1397.485] Markers: (--) probed, (**) from config file, (==) default setting,
        (++) from command line, (!!) notice, (II) informational,
        (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
[  1397.485] (==) Log file: "/var/log/Xorg.0.log", Time: Sat Oct 22 13:29:52 2016
[  1397.485] (==) Using config file: "/etc/X11/xorg.conf"
[  1397.485] (==) Using system config directory "/usr/share/X11/xorg.conf.d"
[  1397.485] (==) ServerLayout "Layout0"
[  1397.485] (**) |-->Screen "Screen0" (0)
[  1397.485] (**) |   |-->Monitor "Monitor0"
[  1397.486] (**) |   |-->Device "Device0"
[  1397.486] (**) |-->Input Device "Keyboard0"
[  1397.486] (**) |-->Input Device "Mouse0"
[  1397.486] (==) Automatically adding devices
[  1397.486] (==) Automatically enabling devices
[  1397.486] (==) Automatically adding GPU devices
[  1397.486] (==) Max clients allowed: 256, resource mask: 0x1fffff
[  1397.486] (WW) The directory "/usr/share/fonts/X11/cyrillic" does not exist.
[  1397.486]    Entry deleted from font path.
[  1397.486] (WW) The directory "/usr/share/fonts/X11/100dpi/" does not exist.
[  1397.486]    Entry deleted from font path.
[  1397.486] (WW) The directory "/usr/share/fonts/X11/75dpi/" does not exist.
[  1397.486]    Entry deleted from font path.
[  1397.486] (WW) The directory "/usr/share/fonts/X11/100dpi" does not exist.
[  1397.486]    Entry deleted from font path.
[  1397.486] (WW) The directory "/usr/share/fonts/X11/75dpi" does not exist.
[  1397.486]    Entry deleted from font path.
[  1397.486] (==) FontPath set to:
        /usr/share/fonts/X11/misc,
        /usr/share/fonts/X11/Type1,
        built-ins
[  1397.486] (==) ModulePath set to "/usr/lib/x86_64-linux-gnu/xorg/extra-modules,/usr/lib/xorg/extra-modules,/usr/lib/xorg/modules"
[  1397.486] (WW) Hotplugging is on, devices using drivers 'kbd', 'mouse' or 'vmmouse' will be disabled.
[  1397.486] (WW) Disabling Keyboard0
[  1397.486] (WW) Disabling Mouse0
[  1397.486] (II) Loader magic: 0x55656fddada0
[  1397.486] (II) Module ABI versions:
[  1397.486]    X.Org ANSI C Emulation: 0.4
[  1397.486]    X.Org Video Driver: 20.0
[  1397.486]    X.Org XInput driver : 22.1
[  1397.486]    X.Org Server Extension : 9.0
[  1397.486] (++) using VT number 7

[  1397.486] (II) systemd-logind: logind integration requires -keeptty and -keeptty was not provided, disabling logind integration
[  1397.487] (II) xfree86: Adding drm device (/dev/dri/card0)
[  1397.488] (--) PCI:*(0:0:16:0) 10de:07e1:1458:d000 rev 162, Mem @ 0xe2000000/16777216, 0xd0000000/268435456, 0xe3000000/16777216, BIOS @ 0x????????/131072
[  1397.488] (II) LoadModule: "glx"
[  1397.488] (II) Loading /usr/lib/xorg/modules/extensions/libglx.so
[  1397.501] (II) Module glx: vendor="NVIDIA Corporation"
[  1397.501]    compiled for 4.0.2, module version = 1.0.0
[  1397.501]    Module class: X.Org Server Extension
[  1397.501] (II) NVIDIA GLX Module  304.132  Fri Sep 16 11:22:36 PDT 2016
[  1397.501] (II) LoadModule: "nvidia"
[  1397.501] (II) Loading /usr/lib/xorg/modules/drivers/nvidia_drv.so
[  1397.502] (II) Module nvidia: vendor="NVIDIA Corporation"
[  1397.502]    compiled for 4.0.2, module version = 1.0.0
[  1397.502]    Module class: X.Org Video Driver
[  1397.502] (II) NVIDIA dlloader X Driver  304.132  Fri Sep 16 11:03:44 PDT 2016
[  1397.502] (II) NVIDIA Unified Driver for all Supported NVIDIA GPUs
[  1397.502] (II) Loading sub module "fb"
[  1397.502] (II) LoadModule: "fb"
[  1397.502] (II) Loading /usr/lib/xorg/modules/libfb.so
[  1397.502] (II) Module fb: vendor="X.Org Foundation"
[  1397.502]    compiled for 1.18.3, module version = 1.0.0
[  1397.502]    ABI class: X.Org ANSI C Emulation, version 0.4
[  1397.502] (II) Loading sub module "wfb"
[  1397.502] (II) LoadModule: "wfb"
[  1397.502] (II) Loading /usr/lib/xorg/modules/libwfb.so
[  1397.502] (II) Module wfb: vendor="X.Org Foundation"
[  1397.502]    compiled for 1.18.3, module version = 1.0.0
[  1397.502]    ABI class: X.Org ANSI C Emulation, version 0.4
[  1397.502] (II) Loading sub module "ramdac"
[  1397.502] (II) LoadModule: "ramdac"
[  1397.502] (II) Module "ramdac" already built-in
[  1397.503] (**) NVIDIA(0): Depth 24, (--) framebuffer bpp 32
[  1397.503] (==) NVIDIA(0): RGB weight 888
[  1397.503] (==) NVIDIA(0): Default visual is TrueColor
[  1397.503] (==) NVIDIA(0): Using gamma correction (1.0, 1.0, 1.0)
[  1397.503] (**) NVIDIA(0): Enabling 2D acceleration
[  1397.829] (II) NVIDIA(GPU-0): Display (Panasonic TH-42P*10 (CRT-0)) does not support NVIDIA
[  1397.829] (II) NVIDIA(GPU-0):     3D Vision stereo.
[  1397.830] (II) NVIDIA(0): NVIDIA GPU GeForce 7100 / nForce 630i (C73) at PCI:0:16:0
[  1397.830] (II) NVIDIA(0):     (GPU-0)
[  1397.830] (--) NVIDIA(0): Memory: 524288 kBytes
[  1397.830] (--) NVIDIA(0): VideoBIOS: 05.73.32.09.21
[  1397.830] (--) NVIDIA(0): Interlaced video modes are supported on this GPU
[  1397.830] (--) NVIDIA(0): Valid display device(s) on GeForce 7100 / nForce 630i at PCI:0:16:0
[  1397.830] (--) NVIDIA(0):     Panasonic TH-42P*10 (CRT-0) (connected)
[  1397.830] (--) NVIDIA(0):     DFP-0
[  1397.830] (--) NVIDIA(0): Panasonic TH-42P*10 (CRT-0): 350.0 MHz maximum pixel clock
[  1397.830] (--) NVIDIA(0): DFP-0: 165.0 MHz maximum pixel clock
[  1397.830] (--) NVIDIA(0): DFP-0: Internal Single Link TMDS
[  1397.830] (**) NVIDIA(0): Using HorizSync/VertRefresh ranges from the EDID for display
[  1397.830] (**) NVIDIA(0):     device Panasonic TH-42P*10 (CRT-0) (Using EDID frequencies
[  1397.830] (**) NVIDIA(0):     has been enabled on all display devices.)
[  1397.830] (==) NVIDIA(0):
[  1397.830] (==) NVIDIA(0): No modes were requested; the default mode "nvidia-auto-select"
[  1397.830] (==) NVIDIA(0):     will be used as the requested mode.
[  1397.830] (==) NVIDIA(0):
[  1397.830] (II) NVIDIA(0): Validated MetaModes:
[  1397.830] (II) NVIDIA(0):     "CRT-0:nvidia-auto-select"
[  1397.830] (II) NVIDIA(0): Virtual screen size determined to be 1600 x 1200
[  1397.831] (WW) NVIDIA(0): Unable to support custom viewPortOut 1600 x 900 +0 +150
[  1397.831] (WW) NVIDIA(0): Unable to support custom viewPortOut 1600 x 900 +0 +150
[  1397.831] (--) NVIDIA(0): DPI set to (44, 58); computed from "UseEdidDpi" X config
[  1397.831] (--) NVIDIA(0):     option
[  1397.831] (--) Depth 24 pixmap format is 32 bpp
[  1397.835] (II) NVIDIA(0): Setting mode "CRT-0:nvidia-auto-select"
[  1397.940] (==) NVIDIA(0): Disabling shared memory pixmaps
[  1397.940] (==) NVIDIA(0): Backing store enabled
[  1397.940] (==) NVIDIA(0): Silken mouse enabled
[  1397.941] (**) NVIDIA(0): DPMS enabled
[  1397.941] (II) Loading sub module "dri2"
[  1397.941] (II) LoadModule: "dri2"
[  1397.941] (II) Module "dri2" already built-in
[  1397.941] (II) NVIDIA(0): [DRI2] Setup complete
[  1397.941] (II) NVIDIA(0): [DRI2]   VDPAU driver: nvidia
[  1397.941] (--) RandR disabled
[  1397.944] (II) SELinux: Disabled on system
[  1397.945] (II) Initializing extension GLX
[  1397.945] (II) Indirect GLX disabled.(II) config/udev: Adding input device Power Button (/dev/input/event1)
[  1397.983] (**) Power Button: Applying InputClass "evdev keyboard catchall"
[  1397.983] (II) LoadModule: "evdev"
[  1397.983] (II) Loading /usr/lib/xorg/modules/input/evdev_drv.so
[  1397.983] (II) Module evdev: vendor="X.Org Foundation"
[  1397.983]    compiled for 1.18.1, module version = 2.10.1
[  1397.983]    Module class: X.Org XInput Driver
[  1397.983]    ABI class: X.Org XInput driver, version 22.1
[  1397.983] (II) Using input driver 'evdev' for 'Power Button'
[  1397.983] (**) Power Button: always reports core events
[  1397.983] (**) evdev: Power Button: Device: "/dev/input/event1"
[  1397.983] (--) evdev: Power Button: Vendor 0 Product 0x1
[  1397.983] (--) evdev: Power Button: Found keys
[  1397.984] (II) evdev: Power Button: Configuring as keyboard
[  1397.984] (**) Option "config_info" "udev:/sys/devices/LNXSYSTM:00/LNXPWRBN:00/input/input1/event1"
[  1397.984] (II) XINPUT: Adding extended input device "Power Button" (type: KEYBOARD, id 6)
[  1397.984] (**) Option "xkb_rules" "evdev"
[  1397.984] (**) Option "xkb_model" "pc105"
[  1397.984] (**) Option "xkb_layout" "us"
[  1397.984] (II) config/udev: Adding input device Power Button (/dev/input/event0)
[  1397.984] (**) Power Button: Applying InputClass "evdev keyboard catchall"
[  1397.984] (II) Using input driver 'evdev' for 'Power Button'
[  1397.984] (**) Power Button: always reports core events
[  1397.984] (**) evdev: Power Button: Device: "/dev/input/event0"
[  1397.984] (--) evdev: Power Button: Vendor 0 Product 0x1
[  1397.984] (--) evdev: Power Button: Found keys
[  1397.984] (II) evdev: Power Button: Configuring as keyboard
[  1397.984] (**) Option "config_info" "udev:/sys/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0C:00/input/input0/event0"
[  1397.984] (II) XINPUT: Adding extended input device "Power Button" (type: KEYBOARD, id 7)
[  1397.984] (**) Option "xkb_rules" "evdev"
[  1397.984] (**) Option "xkb_model" "pc105"
[  1397.984] (**) Option "xkb_layout" "us"
[  1397.985] (II) config/udev: Adding input device Logitech K400 (/dev/input/event2)
[  1397.985] (**) Logitech K400: Applying InputClass "evdev pointer catchall"
[  1397.985] (**) Logitech K400: Applying InputClass "evdev keyboard catchall"
[  1397.985] (II) Using input driver 'evdev' for 'Logitech K400'
[  1397.985] (**) Logitech K400: always reports core events
[  1397.985] (**) evdev: Logitech K400: Device: "/dev/input/event2"
[  1397.985] (--) evdev: Logitech K400: Vendor 0x46d Product 0x4024
[  1397.985] (--) evdev: Logitech K400: Found 20 mouse buttons
[  1397.985] (--) evdev: Logitech K400: Found scroll wheel(s)
[  1397.985] (--) evdev: Logitech K400: Found relative axes
[  1397.985] (--) evdev: Logitech K400: Found x and y relative axes
[  1397.985] (--) evdev: Logitech K400: Found absolute axes
[  1397.985] (II) evdev: Logitech K400: Forcing absolute x/y axes to exist.
[  1397.985] (--) evdev: Logitech K400: Found keys
[  1397.985] (II) evdev: Logitech K400: Configuring as mouse
[  1397.985] (II) evdev: Logitech K400: Configuring as keyboard
[  1397.985] (II) evdev: Logitech K400: Adding scrollwheel support
[  1397.985] (**) evdev: Logitech K400: YAxisMapping: buttons 4 and 5
[  1397.985] (**) evdev: Logitech K400: EmulateWheelButton: 4, EmulateWheelInertia: 10, EmulateWheelTimeout: 200
[  1397.985] (**) Option "config_info" "udev:/sys/devices/pci0000:00/0000:00:04.0/usb2/2-1/2-1:1.2/0003:046D:C52B.0003/0003:046D:4024.0004/input/input5/event2"
[  1397.985] (II) XINPUT: Adding extended input device "Logitech K400" (type: KEYBOARD, id 8)
[  1397.985] (**) Option "xkb_rules" "evdev"
[  1397.985] (**) Option "xkb_model" "pc105"
[  1397.985] (**) Option "xkb_layout" "us"
[  1397.985] (II) evdev: Logitech K400: initialized for relative axes.
[  1397.985] (WW) evdev: Logitech K400: ignoring absolute axes.
[  1397.985] (**) Logitech K400: (accel) keeping acceleration scheme 1
[  1397.985] (**) Logitech K400: (accel) acceleration profile 0
[  1397.985] (**) Logitech K400: (accel) acceleration factor: 2.000
[  1397.985] (**) Logitech K400: (accel) acceleration threshold: 4
[  1397.986] (II) config/udev: Adding input device Logitech K400 (/dev/input/mouse0)
[  1397.986] (II) No input driver specified, ignoring this device.
[  1397.986] (II) This device may have been added with another device file.
[  1397.986] (II) config/udev: Adding input device Media Center Ed. eHome Infrared Remote Transceiver (1784:0001) (/dev/input/event3)
[  1397.986] (**) Media Center Ed. eHome Infrared Remote Transceiver (1784:0001): Applying InputClass "evdev keyboard catchall"
[  1397.986] (II) Using input driver 'evdev' for 'Media Center Ed. eHome Infrared Remote Transceiver (1784:0001)'
[  1397.986] (**) Media Center Ed. eHome Infrared Remote Transceiver (1784:0001): always reports core events
[  1397.986] (**) evdev: Media Center Ed. eHome Infrared Remote Transceiver (1784:0001): Device: "/dev/input/event3"
[  1397.986] (--) evdev: Media Center Ed. eHome Infrared Remote Transceiver (1784:0001): Vendor 0x1784 Product 0x1
[  1397.986] (--) evdev: Media Center Ed. eHome Infrared Remote Transceiver (1784:0001): Found keys
[  1397.986] (II) evdev: Media Center Ed. eHome Infrared Remote Transceiver (1784:0001): Configuring as keyboard
[  1397.986] (**) Option "config_info" "udev:/sys/devices/pci0000:00/0000:00:04.0/usb2/2-2/2-2:1.0/rc/rc0/input6/event3"
[  1397.986] (II) XINPUT: Adding extended input device "Media Center Ed. eHome Infrared Remote Transceiver (1784:0001)" (type: KEYBOARD, id 9)
[  1397.986] (**) Option "xkb_rules" "evdev"
[  1397.986] (**) Option "xkb_model" "pc105"
[  1397.986] (**) Option "xkb_layout" "us"
[  1397.987] (II) config/udev: Adding input device HDA NVidia Line (/dev/input/event7)
[  1397.987] (II) No input driver specified, ignoring this device.
[  1397.987] (II) This device may have been added with another device file.
[  1397.987] (II) config/udev: Adding input device HDA NVidia Line Out Front (/dev/input/event8)
[  1397.987] (II) No input driver specified, ignoring this device.
[  1397.987] (II) This device may have been added with another device file.
[  1397.987] (II) config/udev: Adding input device HDA NVidia Line Out Surround (/dev/input/event9)
[  1397.987] (II) No input driver specified, ignoring this device.
[  1397.987] (II) This device may have been added with another device file.
[  1397.988] (II) config/udev: Adding input device HDA NVidia Line Out CLFE (/dev/input/event10)
[  1397.988] (II) No input driver specified, ignoring this device.
[  1397.988] (II) This device may have been added with another device file.
[  1397.988] (II) config/udev: Adding input device HDA NVidia Line Out Side (/dev/input/event11)
[  1397.988] (II) No input driver specified, ignoring this device.
[  1397.988] (II) This device may have been added with another device file.
[  1397.988] (II) config/udev: Adding input device HDA NVidia Rear Mic (/dev/input/event5)
[  1397.988] (II) No input driver specified, ignoring this device.
[  1397.988] (II) This device may have been added with another device file.
[  1397.988] (II) config/udev: Adding input device HDA NVidia Front Mic (/dev/input/event6)
[  1397.988] (II) No input driver specified, ignoring this device.
[  1397.988] (II) This device may have been added with another device file.
[  1397.990] (II) config/udev: Adding input device MCE IR Keyboard/Mouse (mceusb) (/dev/input/event4)
[  1397.990] (**) MCE IR Keyboard/Mouse (mceusb): Applying InputClass "evdev pointer catchall"
[  1397.990] (**) MCE IR Keyboard/Mouse (mceusb): Applying InputClass "evdev keyboard catchall"
[  1397.990] (II) Using input driver 'evdev' for 'MCE IR Keyboard/Mouse (mceusb)'
[  1397.990] (**) MCE IR Keyboard/Mouse (mceusb): always reports core events
[  1397.990] (**) evdev: MCE IR Keyboard/Mouse (mceusb): Device: "/dev/input/event4"
[  1397.990] (--) evdev: MCE IR Keyboard/Mouse (mceusb): Vendor 0 Product 0
[  1397.990] (--) evdev: MCE IR Keyboard/Mouse (mceusb): Found 3 mouse buttons
[  1397.990] (--) evdev: MCE IR Keyboard/Mouse (mceusb): Found relative axes
[  1397.990] (--) evdev: MCE IR Keyboard/Mouse (mceusb): Found x and y relative axes
[  1397.990] (--) evdev: MCE IR Keyboard/Mouse (mceusb): Found keys
[  1397.990] (II) evdev: MCE IR Keyboard/Mouse (mceusb): Configuring as mouse
[  1397.990] (II) evdev: MCE IR Keyboard/Mouse (mceusb): Configuring as keyboard
[  1397.990] (**) evdev: MCE IR Keyboard/Mouse (mceusb): YAxisMapping: buttons 4 and 5
[  1397.990] (**) evdev: MCE IR Keyboard/Mouse (mceusb): EmulateWheelButton: 4, EmulateWheelInertia: 10, EmulateWheelTimeout: 200
[  1397.990] (**) Option "config_info" "udev:/sys/devices/virtual/input/input7/event4"
[  1397.990] (II) XINPUT: Adding extended input device "MCE IR Keyboard/Mouse (mceusb)" (type: KEYBOARD, id 10)
[  1397.990] (**) Option "xkb_rules" "evdev"
[  1397.990] (**) Option "xkb_model" "pc105"
[  1397.990] (**) Option "xkb_layout" "us"
[  1397.991] (II) evdev: MCE IR Keyboard/Mouse (mceusb): initialized for relative axes.
[  1397.991] (**) MCE IR Keyboard/Mouse (mceusb): (accel) keeping acceleration scheme 1
[  1397.991] (**) MCE IR Keyboard/Mouse (mceusb): (accel) acceleration profile 0
[  1397.991] (**) MCE IR Keyboard/Mouse (mceusb): (accel) acceleration factor: 2.000
[  1397.991] (**) MCE IR Keyboard/Mouse (mceusb): (accel) acceleration threshold: 4
[  1397.991] (II) config/udev: Adding input device MCE IR Keyboard/Mouse (mceusb) (/dev/input/mouse1)
[  1397.991] (II) No input driver specified, ignoring this device.
[  1397.991] (II) This device may have been added with another device file.
[  1398.807] (II) NVIDIA(GPU-0): Display (Panasonic TH-42P*10 (CRT-0)) does not support NVIDIA
[  1398.807] (II) NVIDIA(GPU-0):     3D Vision stereo.
[  1398.807] (**) NVIDIA(0): Using HorizSync/VertRefresh ranges from the EDID for display
[  1398.807] (**) NVIDIA(0):     device Panasonic TH-42P*10 (CRT-0) (Using EDID frequencies
[  1398.807] (**) NVIDIA(0):     has been enabled on all display devices.)
[  1399.069] (II) NVIDIA(GPU-0): Display (Panasonic TH-42P*10 (CRT-0)) does not support NVIDIA
[  1399.069] (II) NVIDIA(GPU-0):     3D Vision stereo.
[  1399.069] (**) NVIDIA(0): Using HorizSync/VertRefresh ranges from the EDID for display
[  1399.069] (**) NVIDIA(0):     device Panasonic TH-42P*10 (CRT-0) (Using EDID frequencies
[  1399.069] (**) NVIDIA(0):     has been enabled on all display devices.)

Let me know if thee is any additional info I can provide in order to assist solving this problem.

So, I did the following steps and now things are working.

First I recheck for any nvidia leftovers and remove them.

sudo apt-get remove nvidia*
sudo apt-get autoremove

Still did not work, so I ran

sudo apt-get update
sudo apt-get upgrade

and only than things start working.

Hello
NVIDIA-Linux-x86_64-304.132-patched-mtrr.run was tested using fedora24.
The start is no problem, but OpenGL doesn’t move.
Is everyone moving OpenGL function?

I was testing it on Ubuntu 16.04 and for me the problem was that driver installation failed not due to mtrr_del (err 0) error and the module was loaded.
This patched version did the trick and installation completed successfully.

As far as I understand NVIDIA removed VDPAU support from version 304.128 and newer, so I will probably add a Geforce 710 card to my HTPC and disable the embedded GeForce 71000 in order to be able to play 1080P movies.

This is from NVIDIA 304.128 release highlights:

Removed libvdpau and libvdpau_trace from the NVIDIA driver package. 
VDPAU is not supported on the legacy hardware supported on the release 304 legacy driver branch. 
The libvdpau_nvidia vendor library is still included, so users who wish to use VDPAU with newer hardware that 
still works with release 304 drivers may install libvdpau from packages provided by the OS vendor where available, 
or from the source code available at:  http://people.freedesktop.org/~aplattner/vdpau/

304.134 has been released but still does not contain the mtrr patch so does not load…

A patched 32-bit .run can be found at:

[url]LxPup - Puppy Linux + LXDE - Browse Files at SourceForge.net

any hope that for 64 bit linux system that bug in 304 legacy driver will be fix ?

here is patch for legacy 304.134 drivers which will be need for recent > 4.3 kernels

http://sprunge.us/aVLB

A further patch is now needed for Kernel 4.9…

A patched 32-bit .run file is available at:
NVIDIA-Linux-x86-304.134-patched-k4.9.run

The patch for Kernel 4.9 is:

--- kernel/nv-drm.c   2016-12-09 19:47:20.000000000 +0000
+++ kernel/nv-drm.c   2017-01-02 16:03:57.691298148 +0000
@@ -71,7 +71,11 @@
 };
 
 static struct drm_driver nv_drm_driver = {
-    .driver_features = 0,
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 9, 0)
+    .driver_features = DRIVER_GEM | DRIVER_PRIME | DRIVER_LEGACY,
+#else
+     .driver_features = DRIVER_GEM | DRIVER_PRIME,
+#endif
     .load = nv_drm_load,
     .unload = nv_drm_unload,
     .fops = &nv_drm_fops,

304.135 driver now no longer needs the mttr patch ;-)

but for kernel 4.9 onwards the 4.9 patch above is still needed…

patched 32-bit .run file is uploaded to:
[url]LxPup - Puppy Linux + LXDE - Browse Files at SourceForge.net

@aplattner please note…

A further patch is now needed for kernel 4.10…

Patch obtained from here

304.135 32-bit driver patched for kernel-4.10 available from:

NVIDIA-Linux-x86-304.135-patched-k4.10.run

A further patch for kernel 4.11 …

304.135 32-bit driver patched for kernel-4.11 available from:

NVIDIA-Linux-x86-304.135-patched-k4.11.run

Patch is:

--- a/kernel/nv-drm.c
+++ b/kernel/nv-drm.c
@@ -22,6 +22,8 @@
 #include <drm/drm_gem.h>
 #endif
 
+#include <linux/version.h>
+
 extern nv_linux_state_t *nv_linux_devices;
 
 static int nv_drm_load(
@@ -42,7 +44,11 @@
     return -ENODEV;
 }
 
+#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 11, 0)
 static int nv_drm_unload(
+#else
+static void nv_drm_unload(
+#endif
     struct drm_device *dev
 )
 {
@@ -52,11 +58,19 @@
     {
         if (nvl->dev == dev->pdev)
         {
+#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 11, 0)
             return 0;
+#else
+            return;
+#endif
         }
     }
 
+#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 11, 0)
     return -ENODEV;
+#else
+    return;
+#endif
 }
 
 static const struct file_operations nv_drm_fops = {

hello, is it possible you could prepare *.run file for x86_64 and kernel 4.11.3? I would test it and let everyone know.

thank you,
geos

A further patch for kernel 4.12 …

304.135 32-bit driver patched for kernel-4.12 available from:

NVIDIA-Linux-x86-304.135-patched-k4.12.run

Patch is:

--- a/nv-vtophys.c	2016-12-09 20:30:08.000000000 +0100
+++ b/nv-vtophys.c	2017-05-10 10:05:28.452722808 +0200
@@ -25,6 +25,7 @@ NvU64 nv_get_phys_address(
 #else
     struct mm_struct *mm;
     pgd_t *pgd = NULL;
+    p4d_t *p4d = NULL;
     pmd_t *pmd = NULL;
     pte_t *pte = NULL;
     NvU64 retval;
@@ -41,7 +42,7 @@ NvU64 nv_get_phys_address(
     if (!NV_PGD_PRESENT(pgd))
         goto failed;
 
-    pmd = NV_PMD_OFFSET(address, pgd);
+    pmd = NV_PMD_OFFSET(address, p4d);
     if (!NV_PMD_PRESENT(pmd))
         goto failed;
 
--- a/nv-linux.h	2017-05-10 09:19:05.820789291 +0200
+++ b/nv-linux.h	2017-05-10 10:05:57.656844602 +0200
@@ -1389,11 +1389,11 @@ typedef void irqreturn_t;
 #define NV_PMD_UNMAP(pmd) pmd_unmap(pmd);
 #else
 #if defined(PUD_SHIFT) /* 4-level pgtable */
-#define NV_PMD_OFFSET(address, pgd)                     \
+#define NV_PMD_OFFSET(address, p4d)                     \
    ({                                                   \
         pmd_t *__pmd = NULL;                            \
         pud_t *__pud;                                   \
-        __pud = pud_offset(pgd, address);               \
+        __pud = pud_offset(p4d, address);               \
         if ((__pud != NULL) &&                          \
             !(pud_bad(*__pud) || pud_none(*__pud)))     \
             __pmd = pmd_offset(__pud, address);         \