- Package:
- nvidia-kernel-dkms
- Source:
- nvidia-kernel-dkms
- Submitter:
- Nicolas Patrois
- Date:
- 2026-09-21 09:31:01 UTC
- Severity:
- normal
- Tags:
Dear Maintainer, The new 7.2 kernel headers fails to build the nVidia driver. Here is apt’s output: Paramétrage de linux-image-7.2.6+deb14-amd64 (7.2.6-1) ... I: /vmlinuz.old is now a symlink to boot/vmlinuz-7.1.13+deb14-amd64 I: /initrd.img.old is now a symlink to boot/initrd.img-7.1.13+deb14-amd64 I: /vmlinuz is now a symlink to boot/vmlinuz-7.2.6+deb14-amd64 I: /initrd.img is now a symlink to boot/initrd.img-7.2.6+deb14-amd64 /etc/kernel/postinst.d/dkms: Sign command: /lib/modules/7.2.6+deb14-amd64/build/scripts/sign-file Signing key: /var/lib/dkms/mok.key Public certificate (MOK): /var/lib/dkms/mok.pub Autoinstall of module nvidia-current/550.163.01 for kernel 7.2.6+deb14-amd64 (x86_64) Building module(s)...........(bad exit status: 2) Failed command: env NV_VERBOSE=1 make -j12 modules KERNEL_UNAME=7.2.6+deb14-amd64 Error! Bad return status for module build on kernel: 7.2.6+deb14-amd64 (x86_64) Consult /var/lib/dkms/nvidia-current/550.163.01/build/make.log for more information. Autoinstall on 7.2.6+deb14-amd64 failed for module(s) nvidia-current(10). Error! One or more modules failed to install during autoinstall. Refer to previous errors for more information. run-parts: /etc/kernel/postinst.d/dkms exited with return code 1 dpkg: erreur de traitement du paquet linux-image-7.2.6+deb14-amd64 (--configure) : old linux-image-7.2.6+deb14-amd64 package postinst maintainer script subprocess failed with exit status 1 Paramétrage de linux-headers-7.2.6+deb14-amd64 (7.2.6-1) ... /etc/kernel/header_postinst.d/dkms: Sign command: /lib/modules/7.2.6+deb14-amd64/build/scripts/sign-file Signing key: /var/lib/dkms/mok.key Public certificate (MOK): /var/lib/dkms/mok.pub Autoinstall of module nvidia-current/550.163.01 for kernel 7.2.6+deb14-amd64 (x86_64) Building module(s)..........(bad exit status: 2) Failed command: env NV_VERBOSE=1 make -j12 modules KERNEL_UNAME=7.2.6+deb14-amd64 Error! Bad return status for module build on kernel: 7.2.6+deb14-amd64 (x86_64) Consult /var/lib/dkms/nvidia-current/550.163.01/build/make.log for more information. Autoinstall on 7.2.6+deb14-amd64 failed for module(s) nvidia-current(10). Error! One or more modules failed to install during autoinstall. Refer to previous errors for more information. run-parts: /etc/kernel/header_postinst.d/dkms exited with return code 1 dpkg: erreur de traitement du paquet linux-headers-7.2.6+deb14-amd64 (--configure) : old linux-headers-7.2.6+deb14-amd64 package postinst maintainer script subprocess failed with exit status 1 Paramétrage de libavformat63:amd64 (10:9.0.2-dmo1) ... dpkg: des problèmes de dépendances empêchent la configuration de linux-image- amd64 : linux-image-amd64 dépend de linux-image-7.2.6+deb14-amd64 (= 7.2.6-1); cependant : Le paquet linux-image-7.2.6+deb14-amd64 n'est pas encore configuré. dpkg: erreur de traitement du paquet linux-image-amd64 (--configure) : problèmes de dépendances - laissé non configuré Paramétrage de libavfilter12:amd64 (10:9.0.2-dmo1) ... dpkg: des problèmes de dépendances empêchent la configuration de linux-headers- amd64 : linux-headers-amd64 dépend de linux-headers-7.2.6+deb14-amd64 (= 7.2.6-1); cependant : Le paquet linux-headers-7.2.6+deb14-amd64 n'est pas encore configuré. dpkg: erreur de traitement du paquet linux-headers-amd64 (--configure) : problèmes de dépendances - laissé non configuré […] Des erreurs ont été rencontrées pendant l'exécution : linux-image-7.2.6+deb14-amd64 linux-headers-7.2.6+deb14-amd64 linux-image-amd64 linux-headers-amd64 Erreur : Sub-process /usr/bin/dpkg returned an error code (1) I’m not sure if the ftbfs tag is required here. Yours, n.
Dear Maintainer, A quick review shows that there seem to be several culprits here: * strncpy seems to have been removed from kernel 7.2.6, so all references to strncpy would need to be replaced with strscpy. I found the following: * nvidia/os-interface.c:753 strncpy(buf, current->comm, len - 1); * nvidia/linux_nvswitch.c:2029 strncpy(regkey_val, regkey_val_start, regkey_val_len); * nvidia/linux_nvswitch.c:2384 return strncpy(dest, src, length); (nvswitch_os_strncpy) <--- Given this is called by code not open-sourced, I believe, we'd need to be careful on whether the calling code is expecting the zero-padding strncpy does but which I believe strscpy does not, in case we need to do some wrapping to emulate that behaviour instead of simply replacing one with the other. * nvidia-uvm/uvm_pmm_gpu.c:3041 strncpy(chunk_split_cache[level].name, "uvm_gpu_chunk_t", ...); * nvidia-modeset/nvidia-modeset-linux.c:354 return strncpy(dest, src, n); (nvkms_strncpy) <--- Same as above: Given this is called by code not open- sourced, I believe, we'd need to be careful on whether the calling code is expecting the zero-padding strncpy does but which I believe strscpy does not, in case we need to do some wrapping to emulate that behaviour instead of simply replacing one with the other. * It seems that in kernel 7.2.6 the DRM core changed the 'atomic' part. I believe it renamed `struct drm_atomic_state` to `struct drm_atomic_commit`, and made other non-trivial changes to how lifecycle is handled. These changes (e.g. the struct drm_atomic_state seems to no longer exist) cause the module to fail compilation, which cascades to every call where a pointer to this struct is used in calls to the new DRM functions. This seems like more complex changes are needed than simply the substitutions above... Some errors received are: nvidia-drm/nvidia-drm-drv.c:224:27: error: initialization of ‘struct drm_atomic_commit * (*)(struct drm_device *)’ from incompatible pointer type ‘struct drm_atomic_state * (*)(struct drm_device *)’ [-Wincompatible-pointer-types] nvidia-drm/nvidia-drm-drv.c:1212:13: error: implicit declaration of function ‘drm_atomic_state_alloc’; did you mean ‘nv_drm_atomic_state_alloc’? [-Wimplicit-function-declaration] nvidia-drm/nvidia-drm-modeset.c:47:29: error: field ‘base’ has incomplete type include/drm/drm_atomic.h:990:31: error: invalid use of undefined type ‘struct drm_atomic_state’ Affected files seem to be: nvidia-drm-drv.c, nvidia-drm-connector.c, nvidia- drm-crtc.c, nvidia-drm-helper.c, nvidia-drm-modeset.c. Not sure if changes in the open-sourced open-gpu-kernel-modules code might contain adaptation to this DRM change that could be backported to the 550.163.01 module.