Kernel – 4.14.10 Still breaks NVIDIA!
Just updated the test system to Kernel 4.14.10, and was ‘somewhat dismayed‘ – to put it politely – that the NVIDIA breakage introduced in 4.14.9 is still there!
............ /home/rgadsdon/kernel/NVIDIA-Linux-x86_64-384.98/kernel/nvidia-uvm/uvm8_va_block.c: In function ‘block_cpu_fault_locked’: /usr/src/linux-4.14.10/arch/x86/include/asm/processor.h:826:39: error: implicit declaration of function ‘task_stack_page’; did you mean ‘task_stack_vm_area’? [-Werror=implicit-function-declaration] unsigned long __ptr = (unsigned long)task_stack_page(task); \ ^ /usr/src/linux-4.14.10/arch/x86/include/asm/processor.h:900:26: note: in expansion of macro ‘task_pt_regs’ #define KSTK_EIP(task) (task_pt_regs(task)->ip) ^~~~~~~~~~~~ /home/rgadsdon/kernel/NVIDIA-Linux-x86_64-384.98/kernel/nvidia-uvm/uvm8_va_block.c:8771:41: note: in expansion of macro ‘KSTK_EIP’ KSTK_EIP(current)); ^~~~~~~~ cc1: some warnings being treated as errors make[3]: *** [/usr/src/linux-4.14.10/scripts/Makefile.build:315: /home/rgadsdon/kernel/NVIDIA-Linux-x86_64-384.98/kernel/nvidia-uvm/uvm8_va_block.o] Error 1 make[2]: *** [/usr/src/linux-4.14.10/Makefile:1504: _module_/home/rgadsdon/kernel/NVIDIA-Linux-x86_64-384.98/kernel] Error 2 make[2]: Leaving directory '/usr/src/linux-4.14.10' make[1]: *** [Makefile:146: sub-make] Error 2 make[1]: Leaving directory '/usr/src/linux-4.14.10' make: *** [Makefile:81: modules] Error 2
So… the 4.14.9 patch still applies, and fixes the problem (see http://rglinuxtech.com/?p=2168 ):
........ ld -r -o /home/rgadsdon/kernel/NVIDIA-Linux-x86_64-384.98-41410/kernel/nvidia-modeset/nv-modeset-interface.o /home/rgadsdon/kernel/NVIDIA-Linux-x86_64-384.98-41410/kernel/nvidia-modeset/nvidia-modeset-linux.o Building modules, stage 2. MODPOST 4 modules CC /home/rgadsdon/kernel/NVIDIA-Linux-x86_64-384.98-41410/kernel/nvidia-drm.mod.o LD [M] /home/rgadsdon/kernel/NVIDIA-Linux-x86_64-384.98-41410/kernel/nvidia-drm.ko CC /home/rgadsdon/kernel/NVIDIA-Linux-x86_64-384.98-41410/kernel/nvidia-modeset.mod.o LD [M] /home/rgadsdon/kernel/NVIDIA-Linux-x86_64-384.98-41410/kernel/nvidia-modeset.ko CC /home/rgadsdon/kernel/NVIDIA-Linux-x86_64-384.98-41410/kernel/nvidia-uvm.mod.o LD [M] /home/rgadsdon/kernel/NVIDIA-Linux-x86_64-384.98-41410/kernel/nvidia-uvm.ko CC /home/rgadsdon/kernel/NVIDIA-Linux-x86_64-384.98-41410/kernel/nvidia.mod.o LD [M] /home/rgadsdon/kernel/NVIDIA-Linux-x86_64-384.98-41410/kernel/nvidia.ko make[2]: Leaving directory '/usr/src/linux-4.14.10' make[1]: Leaving directory '/usr/src/linux-4.14.10'
Its not as if the kernel devs weren’t told… http://lkml.iu.edu/hypermail/linux/kernel/1712.3/02196.html
Oh well, maybe in 4.14.11??
Robert Gadsdon. December 29, 2017.
Use 387.34? Kernel devs will never care about closed source driver support, so why you would think it is them who need to do something is beyond me.
@Henk Koekwaus. Of course, I don’t think that! But.. there have been several occasions where changes affecting NVIDIA – usually around GPL licence changes – _have_ been reverted – eventually.
RG.
I had strange case with 4.14.11 on ryzen 7 1800x with opensuse tumbleweed (I use nvidia 340.104 legacy driver)
The first problem “init 3” was stalling
The second was for patched driver, no successful compilation; also get stack somewhere after “unified memory” stuff.
I passed boot parameter “nopti” and tried it and now its ok!
@Kemal, I think that some of the AMD processors were still flagged for PTI in 4.14.11, and this should have been corrected in 4.14.12..
RG.
Hi Robert,
Thanks for you blog, you saved my install.