Proprietary driver failed to compile after tumbleweed update

After updating tumbleweed to snapshot 20190814 the proprietary NVIDIA driver will not compile anymore.

Here is a part from the output, when installing x11-video-nvidiaG04 package:

nvidia-gfxG04-kmp-default-390.116_k5.1.16_1-10.2.x86_64:

CC [M]
/usr/src/kernel-modules/nvidia-390.116-default/nvidia-uvm/uvm8_tools.o

/usr/src/kernel-modules/nvidia-390.116-default/nvidia-uvm/uvm8_tools.c:207:13:
error: conflicting types for ‘put_user_pages’

207 | static void put_user_pages(struct page **pages, NvU64
page_count)

   |             ^~~~~~~~~~~~~~ 

In file included from
/usr/src/kernel-modules/nvidia-390.116-default/common/inc/nv-pgprot.h:17,

              from 

/usr/src/kernel-modules/nvidia-390.116-default/common/inc/nv-linux.h:20,

              from 

/usr/src/kernel-modules/nvidia-390.116-default/nvidia-uvm/uvm_linux.h:41,

              from 

/usr/src/kernel-modules/nvidia-390.116-default/nvidia-uvm/uvm_common.h:48,

              from 

/usr/src/kernel-modules/nvidia-390.116-default/nvidia-uvm/uvm8_tools.c:23:

/usr/src/linux-5.2.8-1/include/linux/mm.h:1080:6: note: previous
declaration of ‘put_user_pages’ was here

1080 | void put_user_pages(struct page **pages, unsigned long npages);

   |      ^~~~~~~~~~~~~~ 

make[3]: *** [/usr/src/linux-5.2.8-1/scripts/Makefile.build:280:
/usr/src/kernel-modules/nvidia-390.116-default/nvidia-uvm/uvm8_tools.o]
Error 1

make[2]: *** [/usr/src/linux-5.2.8-1/Makefile:1611:
module/usr/src/kernel-modules/nvidia-390.116-default] Error 2

make[2]: Leaving directory ‘/usr/src/linux-5.2.8-1-obj/x86_64/default’

make[1]: *** [Makefile:179: sub-make] Error 2

make[1]: Leaving directory ‘/usr/src/linux-5.2.8-1’

make: *** [Makefile:79: modules] Error 2

Hi and welcome to the Forum :slight_smile:
Likely to fail as the nvidia module rpms have not been made available for the latest Tumbleweed kernel (5.2.8);

https://download.nvidia.com/opensuse/tumbleweed/x86_64/

Looks like it’s been worked on in the last few hours, so just need to wait for it to propagate to the online repositories…
https://build.opensuse.org/project/show/X11:Drivers:Video

The other option is to switch to the hard way (IMHO it’s easy…)
https://en.opensuse.org/SDB:NVIDIA_the_hard_way

I don’t think Nvidia driver 390.116 will build on kernel 5.2 without patches(can provide if needed)
But nvidia driver 390.129 seems to build fine so you should probably upgrade to that version if you want to compile yourself.

An Update is on the way:
https://lists.opensuse.org/opensuse-bugs/2019-08/msg02529.html