Bug#870677: nvidia-kernel-dkms: Doesn't compile with kernel 4.11 (and probably later)
On 2017-08-04 03:09, Jiri Palecek wrote: > Package: nvidia-kernel-dkms > Version: 378.13-1 Hi Jiri, I've just uploaded 378.13-2 to experimental. It builds the module for up to Linux 4.12, but we haven't had time to test it properly. As an alternate solution, you could also build the more recent drivers from SVN, 381.xx and 384.xx are prepared there, and will be uploaded soon to experimental as well. Andreas
Bug#870677: nvidia-kernel-dkms: Doesn't compile with kernel 4.11 (and probably later)
On Thu, 2017-08-10 at 00:49 +0100, Luca Boccassi wrote: > > They were quite straightforward as you can see. This was a bit ambiguous: I meant that the patches are small so risk should be quite low :-) -- Kind regards, Luca Boccassi signature.asc Description: This is a digitally signed message part
Bug#870677: nvidia-kernel-dkms: Doesn't compile with kernel 4.11 (and probably later)
On Mon, 2017-08-07 at 03:12 +0200, Andreas Beckmann wrote: > On 2017-08-04 03:09, Jiri Palecek wrote: > > Package: nvidia-kernel-dkms > > Version: 378.13-1 > > Hi Luca, > > I tried to backport two patches from 340 (couldn't find the place > where the third should be applied now), but that is not sufficient > ... > > Hopefully you can spot immediately what I missed. > > (I want to fix 378 first before uploading 381 which will go through > NEW, which may take some time) > > Andreas I've committed a bunch of new patches (a lot of borken stuff) in 378, tested that it builds on amd64 and i386. Note that I don't have a buster/sid machine at the moment so haven't run them with 4.10/11/12, please give them a quick spin if you can. They were quite straightforward as you can see. Kind regards, Luca Boccassi signature.asc Description: This is a digitally signed message part
Bug#870677: nvidia-kernel-dkms: Doesn't compile with kernel 4.11 (and probably later)
On Mon, 2017-08-07 at 03:12 +0200, Andreas Beckmann wrote: > On 2017-08-04 03:09, Jiri Palecek wrote: > > Package: nvidia-kernel-dkms > > Version: 378.13-1 > > Hi Luca, > > I tried to backport two patches from 340 (couldn't find the place > where the third should be applied now), but that is not sufficient > ... > > conftest result changes with these patches applied (this may already > indicate the problem): > 4.10.0-trunk-amd64 -> 4.11.0-1-amd64 > > -#undef NV_VM_OPS_FAULT_REMOVED_VMA_ARG > +#define NV_VM_OPS_FAULT_REMOVED_VMA_ARG > > -#define NV_DRM_HELPER_MODE_FILL_FB_STRUCT_HAS_CONST_MODE_CMD_ARG > +#undef NV_DRM_HELPER_MODE_FILL_FB_STRUCT_HAS_CONST_MODE_CMD_ARG > > > and it is failing here: > > if [ "-pg" = "-pg" ]; then if [ /usr/src/modules/nvidia- > kernel/nvidia-uvm/uvm8_gpu.o != "scripts/mod/empty.o" ]; then > ./scripts/recordmcount "/usr/src/modules/nvidia-kernel/nvidia- > uvm/uvm8_gpu.o"; fi; fi; > gcc-6 -Wp,-MD,/usr/src/modules/nvidia-kernel/nvidia- > uvm/.uvm8_gpu_isr.o.d -nostdinc -isystem /usr/lib/gcc/x86_64-linux- > gnu/6/include -I/usr/src/linux-headers-4.11.0-1- > common/arch/x86/include -I./arch/x86/includ > e/generated/uapi -I./arch/x86/include/generated -I/usr/src/linux- > headers-4.11.0-1-common/include -I./include -I/usr/src/linux-headers- > 4.11.0-1-common/arch/x86/include/uapi -I/usr/src/linux-headers- > 4.11.0-1-common/ > include/uapi -I./include/generated/uapi -include /usr/src/linux- > headers-4.11.0-1-common/include/linux/kconfig.h - > I/usr/src/modules/nvidia-kernel -I/usr/src/modules/nvidia-kernel > -D__KERNEL__ -Wall -Wundef -Wstrict > -prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror- > implicit-function-declaration -Wno-format-security -std=gnu89 -fno- > PIE -mno-sse -mno-mmx -mno-sse2 -mno-3dnow -mno-avx -m64 -falign- > jumps=1 -falig > n-loops=1 -mno-80387 -mno-fp-ret-in-387 -mpreferred-stack-boundary=3 > -mskip-rax-setup -mtune=generic -mno-red-zone -mcmodel=kernel -funit- > at-a-time -DCONFIG_X86_X32_ABI -DCONFIG_AS_CFI=1 > -DCONFIG_AS_CFI_SIGNAL_FRAM > E=1 -DCONFIG_AS_CFI_SECTIONS=1 -DCONFIG_AS_FXSAVEQ=1 > -DCONFIG_AS_SSSE3=1 -DCONFIG_AS_CRC32=1 -DCONFIG_AS_AVX=1 > -DCONFIG_AS_AVX2=1 -DCONFIG_AS_AVX512=1 -DCONFIG_AS_SHA1_NI=1 > -DCONFIG_AS_SHA256_NI=1 -pipe -Wno-sign-c > ompare -fno-asynchronous-unwind-tables -fno-delete-null-pointer- > checks -Wno-frame-address -O2 --param=allow-store-data-races=0 > -DCC_HAVE_ASM_GOTO -Wframe-larger-than=2048 -fstack-protector-strong > -Wno-unused-but-se > t-variable -Wno-unused-const-variable -fno-var-tracking-assignments > -g -pg -mfentry -DCC_USING_FENTRY -Wdeclaration-after-statement -Wno- > pointer-sign -fno-strict-overflow -fconserve-stack -Werror=implicit- > int -Werr > or=strict-prototypes -Werror=date-time -Werror=incompatible-pointer- > types -I/usr/src/modules/nvidia-kernel/common/inc - > I/usr/src/modules/nvidia-kernel -Wall -MD -Wsign-compare -Wno-cast- > qual -Wno-error -D__KERNEL > __ -DMODULE -DNVRM -DNV_VERSION_STRING=\"378.13\" -Wno-unused- > function -Wuninitialized -fno-strict-aliasing -mno-red-zone > -mcmodel=kernel -DNV_UVM_ENABLE -Wno-sign-compare -Wno-format-extra- > args -Werror=undef -O2 - > DNVIDIA_UVM_ENABLED -DNVIDIA_UNDEF_LEGACY_BIT_MACROS -DLinux > -D__linux__ -I/usr/src/modules/nvidia-kernel/nvidia-uvm -DMODULE - > DKBUILD_BASENAME='"uvm8_gpu_isr"' -DKBUILD_MODNAME='"nvidia_uvm"' -c > -o /usr/src/mo > dules/nvidia-kernel/nvidia-uvm/.tmp_uvm8_gpu_isr.o > /usr/src/modules/nvidia-kernel/nvidia-uvm/uvm8_gpu_isr.c > In file included from /usr/src/modules/nvidia-kernel/nvidia- > uvm/uvm8_global.h:29:0, > from /usr/src/modules/nvidia-kernel/nvidia- > uvm/uvm8_gpu_isr.c:24: > /usr/src/modules/nvidia-kernel/nvidia-uvm/uvm8_gpu_isr.c: In function > 'uvm_gpu_replayable_faults_isr_unlock': > /usr/src/modules/nvidia-kernel/nvidia-uvm/uvm8_gpu_isr.c:273:28: > error: passing argument 1 of 'atomic_read' from incompatible pointer > type [-Werror=incompatible-pointer-types] > UVM_ASSERT(atomic_read(>gpu_kref.refcount) > 0); > ^ > /usr/src/modules/nvidia-kernel/nvidia-uvm/uvm_common.h:138:45: note: > in definition of macro 'UVM_IGNORE_EXPR' > #define UVM_IGNORE_EXPR(expr) ((void)sizeof(expr)) > ^~~~ > /usr/src/modules/nvidia-kernel/nvidia-uvm/uvm_common.h:168:26: note: > in expansion of macro '_UVM_ASSERT_MSG' > #define UVM_ASSERT(expr) _UVM_ASSERT_MSG(expr, #expr, "\n") > ^~~ > /usr/src/modules/nvidia-kernel/nvidia-uvm/uvm8_gpu_isr.c:273:5: note: > in expansion of macro 'UVM_ASSERT' > UVM_ASSERT(atomic_read(>gpu_kref.refcount) > 0); > ^~ > In file included from /usr/src/linux-headers-4.11.0-1- > common/arch/x86/include/asm/msr.h:66:0, > from /usr/src/linux-headers-4.11.0-1- > common/arch/x86/include/asm/processor.h:20, > from /usr/src/linux-headers-4.11.0-1- >
Bug#870677: nvidia-kernel-dkms: Doesn't compile with kernel 4.11 (and probably later)
On 2017-08-04 03:09, Jiri Palecek wrote: > Package: nvidia-kernel-dkms > Version: 378.13-1 Hi Luca, I tried to backport two patches from 340 (couldn't find the place where the third should be applied now), but that is not sufficient ... conftest result changes with these patches applied (this may already indicate the problem): 4.10.0-trunk-amd64 -> 4.11.0-1-amd64 -#undef NV_VM_OPS_FAULT_REMOVED_VMA_ARG +#define NV_VM_OPS_FAULT_REMOVED_VMA_ARG -#define NV_DRM_HELPER_MODE_FILL_FB_STRUCT_HAS_CONST_MODE_CMD_ARG +#undef NV_DRM_HELPER_MODE_FILL_FB_STRUCT_HAS_CONST_MODE_CMD_ARG and it is failing here: if [ "-pg" = "-pg" ]; then if [ /usr/src/modules/nvidia-kernel/nvidia-uvm/uvm8_gpu.o != "scripts/mod/empty.o" ]; then ./scripts/recordmcount "/usr/src/modules/nvidia-kernel/nvidia-uvm/uvm8_gpu.o"; fi; fi; gcc-6 -Wp,-MD,/usr/src/modules/nvidia-kernel/nvidia-uvm/.uvm8_gpu_isr.o.d -nostdinc -isystem /usr/lib/gcc/x86_64-linux-gnu/6/include -I/usr/src/linux-headers-4.11.0-1-common/arch/x86/include -I./arch/x86/includ e/generated/uapi -I./arch/x86/include/generated -I/usr/src/linux-headers-4.11.0-1-common/include -I./include -I/usr/src/linux-headers-4.11.0-1-common/arch/x86/include/uapi -I/usr/src/linux-headers-4.11.0-1-common/ include/uapi -I./include/generated/uapi -include /usr/src/linux-headers-4.11.0-1-common/include/linux/kconfig.h -I/usr/src/modules/nvidia-kernel -I/usr/src/modules/nvidia-kernel -D__KERNEL__ -Wall -Wundef -Wstrict -prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -std=gnu89 -fno-PIE -mno-sse -mno-mmx -mno-sse2 -mno-3dnow -mno-avx -m64 -falign-jumps=1 -falig n-loops=1 -mno-80387 -mno-fp-ret-in-387 -mpreferred-stack-boundary=3 -mskip-rax-setup -mtune=generic -mno-red-zone -mcmodel=kernel -funit-at-a-time -DCONFIG_X86_X32_ABI -DCONFIG_AS_CFI=1 -DCONFIG_AS_CFI_SIGNAL_FRAM E=1 -DCONFIG_AS_CFI_SECTIONS=1 -DCONFIG_AS_FXSAVEQ=1 -DCONFIG_AS_SSSE3=1 -DCONFIG_AS_CRC32=1 -DCONFIG_AS_AVX=1 -DCONFIG_AS_AVX2=1 -DCONFIG_AS_AVX512=1 -DCONFIG_AS_SHA1_NI=1 -DCONFIG_AS_SHA256_NI=1 -pipe -Wno-sign-c ompare -fno-asynchronous-unwind-tables -fno-delete-null-pointer-checks -Wno-frame-address -O2 --param=allow-store-data-races=0 -DCC_HAVE_ASM_GOTO -Wframe-larger-than=2048 -fstack-protector-strong -Wno-unused-but-se t-variable -Wno-unused-const-variable -fno-var-tracking-assignments -g -pg -mfentry -DCC_USING_FENTRY -Wdeclaration-after-statement -Wno-pointer-sign -fno-strict-overflow -fconserve-stack -Werror=implicit-int -Werr or=strict-prototypes -Werror=date-time -Werror=incompatible-pointer-types -I/usr/src/modules/nvidia-kernel/common/inc -I/usr/src/modules/nvidia-kernel -Wall -MD -Wsign-compare -Wno-cast-qual -Wno-error -D__KERNEL __ -DMODULE -DNVRM -DNV_VERSION_STRING=\"378.13\" -Wno-unused-function -Wuninitialized -fno-strict-aliasing -mno-red-zone -mcmodel=kernel -DNV_UVM_ENABLE -Wno-sign-compare -Wno-format-extra-args -Werror=undef -O2 - DNVIDIA_UVM_ENABLED -DNVIDIA_UNDEF_LEGACY_BIT_MACROS -DLinux -D__linux__ -I/usr/src/modules/nvidia-kernel/nvidia-uvm -DMODULE -DKBUILD_BASENAME='"uvm8_gpu_isr"' -DKBUILD_MODNAME='"nvidia_uvm"' -c -o /usr/src/mo dules/nvidia-kernel/nvidia-uvm/.tmp_uvm8_gpu_isr.o /usr/src/modules/nvidia-kernel/nvidia-uvm/uvm8_gpu_isr.c In file included from /usr/src/modules/nvidia-kernel/nvidia-uvm/uvm8_global.h:29:0, from /usr/src/modules/nvidia-kernel/nvidia-uvm/uvm8_gpu_isr.c:24: /usr/src/modules/nvidia-kernel/nvidia-uvm/uvm8_gpu_isr.c: In function 'uvm_gpu_replayable_faults_isr_unlock': /usr/src/modules/nvidia-kernel/nvidia-uvm/uvm8_gpu_isr.c:273:28: error: passing argument 1 of 'atomic_read' from incompatible pointer type [-Werror=incompatible-pointer-types] UVM_ASSERT(atomic_read(>gpu_kref.refcount) > 0); ^ /usr/src/modules/nvidia-kernel/nvidia-uvm/uvm_common.h:138:45: note: in definition of macro 'UVM_IGNORE_EXPR' #define UVM_IGNORE_EXPR(expr) ((void)sizeof(expr)) ^~~~ /usr/src/modules/nvidia-kernel/nvidia-uvm/uvm_common.h:168:26: note: in expansion of macro '_UVM_ASSERT_MSG' #define UVM_ASSERT(expr) _UVM_ASSERT_MSG(expr, #expr, "\n") ^~~ /usr/src/modules/nvidia-kernel/nvidia-uvm/uvm8_gpu_isr.c:273:5: note: in expansion of macro 'UVM_ASSERT' UVM_ASSERT(atomic_read(>gpu_kref.refcount) > 0); ^~ In file included from /usr/src/linux-headers-4.11.0-1-common/arch/x86/include/asm/msr.h:66:0, from /usr/src/linux-headers-4.11.0-1-common/arch/x86/include/asm/processor.h:20, from /usr/src/linux-headers-4.11.0-1-common/arch/x86/include/asm/cpufeature.h:4, from /usr/src/linux-headers-4.11.0-1-common/arch/x86/include/asm/thread_info.h:52, from /usr/src/linux-headers-4.11.0-1-common/include/linux/thread_info.h:25, from
Bug#870677: nvidia-kernel-dkms: Doesn't compile with kernel 4.11 (and probably later)
Package: nvidia-kernel-dkms Version: 378.13-1 Severity: normal Dear Maintainer, -- Package-specific info: uname -a: Linux debian 4.11.0-2-686-pae #1 SMP Debian 4.11.11-1 (2017-07-22) i686 GNU/Linux /proc/version: Linux version 4.11.0-2-686-pae (debian-ker...@lists.debian.org) (gcc version 6.4.0 20170704 (Debian 6.4.0-1) ) #1 SMP Debian 4.11.11-1 (2017-07-22) /proc/driver/nvidia/version: NVRM version: NVIDIA UNIX x86 Kernel Module 375.82 Wed Jul 19 20:16:02 PDT 2017 GCC version: gcc version 6.4.0 20170704 (Debian 6.4.0-1) lspci 'VGA compatible controller [0300]': 02:00.0 VGA compatible controller [0300]: NVIDIA Corporation GF106 [GeForce GTS 450] [10de:0dc4] (rev a1) (prog-if 00 [VGA controller]) Subsystem: ASUSTeK Computer Inc. GF106 [GeForce GTS 450] [1043:8366] Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- SERR- Kernel driver in use: nvidia Kernel modules: nvidia dmesg: Device node permissions: crw-rw+ 1 root video 226, 0 Aug 3 17:55 /dev/dri/card0 crw-rw+ 1 root video 226, 128 Aug 3 17:55 /dev/dri/renderD128 crw-rw-rw- 1 root root 195, 254 Aug 3 18:01 /dev/nvidia-modeset crw-rw-rw- 1 root root 195, 0 Aug 3 18:01 /dev/nvidia0 crw-rw-rw- 1 root root 195, 255 Aug 3 18:01 /dev/nvidiactl /dev/dri/by-path: total 0 lrwxrwxrwx 1 root root 8 Aug 3 17:55 pci-:02:00.0-card -> ../card0 lrwxrwxrwx 1 root root 13 Aug 3 17:55 pci-:02:00.0-render -> ../renderD128 video:x:44: OpenGL and NVIDIA library files installed: -rw-r--r-- 1 root root 2167 May 13 2016 /etc/X11/xorg.conf lrwxrwxrwx 1 root root 15 Sep 25 2016 /etc/alternatives/glx -> /usr/lib/nvidia lrwxrwxrwx 1 root root 47 Jun 26 14:53 /etc/alternatives/glx--libEGL.so-i386-linux-gnu -> /usr/lib/mesa-diverted/i386-linux-gnu/libEGL.so lrwxrwxrwx 1 root root 42 Sep 25 2016 /etc/alternatives/glx--libEGL.so.1-i386-linux-gnu -> /usr/lib/i386-linux-gnu/nvidia/libEGL.so.1 lrwxrwxrwx 1 root root 46 Jun 26 14:53 /etc/alternatives/glx--libGL.so-i386-linux-gnu -> /usr/lib/mesa-diverted/i386-linux-gnu/libGL.so lrwxrwxrwx 1 root root 46 Jun 26 14:53 /etc/alternatives/glx--libGL.so-i386-linux-gnu -> /usr/lib/mesa-diverted/i386-linux-gnu/libGL.so lrwxrwxrwx 1 root root 41 Sep 25 2016 /etc/alternatives/glx--libGL.so.1-i386-linux-gnu -> /usr/lib/i386-linux-gnu/nvidia/libGL.so.1 lrwxrwxrwx 1 root root 41 Sep 25 2016 /etc/alternatives/glx--libGL.so.1-i386-linux-gnu -> /usr/lib/i386-linux-gnu/nvidia/libGL.so.1 lrwxrwxrwx 1 root root 48 Sep 25 2016 /etc/alternatives/glx--libGLESv1_CM.so.1-i386-linux-gnu -> /usr/lib/i386-linux-gnu/nvidia/libGLESv1_CM.so.1 lrwxrwxrwx 1 root root 48 Sep 25 2016 /etc/alternatives/glx--libGLESv1_CM.so.1-i386-linux-gnu -> /usr/lib/i386-linux-gnu/nvidia/libGLESv1_CM.so.1 lrwxrwxrwx 1 root root 50 Jun 26 14:53 /etc/alternatives/glx--libGLESv2.so-i386-linux-gnu -> /usr/lib/mesa-diverted/i386-linux-gnu/libGLESv2.so lrwxrwxrwx 1 root root 50 Jun 26 14:53 /etc/alternatives/glx--libGLESv2.so-i386-linux-gnu -> /usr/lib/mesa-diverted/i386-linux-gnu/libGLESv2.so lrwxrwxrwx 1 root root 45 Sep 25 2016 /etc/alternatives/glx--libGLESv2.so.2-i386-linux-gnu -> /usr/lib/i386-linux-gnu/nvidia/libGLESv2.so.2 lrwxrwxrwx 1 root root 45 Sep 25 2016 /etc/alternatives/glx--libGLESv2.so.2-i386-linux-gnu -> /usr/lib/i386-linux-gnu/nvidia/libGLESv2.so.2 lrwxrwxrwx 1 root root 49 Sep 25 2016 /etc/alternatives/glx--libnvidia-cfg.so.1-i386-linux-gnu -> /usr/lib/i386-linux-gnu/nvidia/libnvidia-cfg.so.1 lrwxrwxrwx 1 root root 25 Sep 25 2016 /etc/alternatives/glx--linux-libglx.so -> /usr/lib/nvidia/libglx.so lrwxrwxrwx 1 root root 42 Sep 25 2016 /etc/alternatives/glx--nvidia-blacklists-nouveau.conf -> /etc/nvidia/nvidia-blacklists-nouveau.conf lrwxrwxrwx 1 root root 36 Sep 25 2016 /etc/alternatives/glx--nvidia-bug-report.sh -> /usr/lib/nvidia/nvidia-bug-report.sh lrwxrwxrwx 1 root root 39 Sep 25 2016 /etc/alternatives/glx--nvidia-drm-outputclass.conf -> /etc/nvidia/nvidia-drm-outputclass.conf lrwxrwxrwx 1 root root 28 Sep 25 2016 /etc/alternatives/glx--nvidia-load.conf -> /etc/nvidia/nvidia-load.conf lrwxrwxrwx 1 root root 32 Sep 25 2016 /etc/alternatives/glx--nvidia-modprobe.conf -> /etc/nvidia/nvidia-modprobe.conf lrwxrwxrwx 1 root root 29 Sep 25 2016 /etc/alternatives/glx--nvidia_drv.so -> /usr/lib/nvidia/nvidia_drv.so lrwxrwxrwx 1 root root 22 Jun 26 14:53 /etc/alternatives/libGL.so-master -> /usr/lib/mesa-diverted lrwxrwxrwx 1 root root 23 Aug 3 17:54 /etc/alternatives/nvidia -> /usr/lib/nvidia/current lrwxrwxrwx 1 root root 50 Aug 3 17:54 /etc/alternatives/nvidia--libEGL.so.1-i386-linux-gnu -> /usr/lib/i386-linux-gnu/nvidia/current/libEGL.so.1 lrwxrwxrwx 1 root root