#1148283 linux-headers-7.2.6+deb14-amd64: Fails to build nVidia driver

#1148283#5
Date:
2026-09-18 16:15:56 UTC
From:
To:
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.

#1148283#16
Date:
2026-09-21 09:28:12 UTC
From:
To:
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.