#1143204 nvidia-open-kernel-dkms: fails to build against linux-image-6.12.100+deb13-amd64 (pci_resize_resource API change)

#1143204#5
Date:
2026-07-31 17:37:07 UTC
From:
To:
Version: 550.163.01-2

Severity: important

Subject:nvidia-open-kernel-dkms: fails to build against
linux-image-6.12.100+deb13-amd64 (pci_resize_resource API change)

After installing the security update to Linux kernel 6.12.100-1 on Debian
13 (Trixie), DKMS fails to build the NVIDIA Open Kernel Module.

The installation of the kernel package stops with:

Error! Bad return status for module build on kernel: 6.12.100+deb13-amd64
(x86_64)

dpkg: error processing package linux-image-6.12.100+deb13-amd64
(--configure):
grep -n "error:" /var/lib/dkms/nvidia-current-open/550.163.01/build/make.log
942:/var/lib/dkms/nvidia-current-open/550.163.01/build/nvidia/nv-pci.c:237:9:
error: too few arguments to function ‘pci_resize_resource’


The relevant compiler error is:

/var/lib/dkms/nvidia-current-open/550.163.01/build/nvidia/nv-pci.c:237:9:
error: too few arguments to function 'pci_resize_resource'

As a consequence:

    linux-image-6.12.100+deb13-amd64 remains unconfigured;
    linux-image-amd64 cannot be configured;
    linux-headers-6.12.100+deb13-amd64 cannot be configured;
    the package upgrade ends with a dpkg error.

The issue is reproducible on multiple independent Debian 13 systems with
the same package versions.

Working configuration:

    linux-image-6.12.96+deb13-amd64
    nvidia-open-kernel-dkms 550.163.01-2

Failing configuration:

    linux-image-6.12.100+deb13-amd64
    nvidia-open-kernel-dkms 550.163.01-2

Steps to reproduce:

    Install Debian 13 (Trixie) with nvidia-open-kernel-dkms 550.163.01-2.
    Update to linux-image-6.12.100-1 from trixie-security.
    During DKMS autoinstall the module build fails with the error above.

Please let me know if additional logs or testing are required.

The complete DKMS build log is attached.

#1143204#10
Date:
2026-08-01 01:53:06 UTC
From:
To:
I can confirm this bug on independent hardware, and I have some additionalanalysis suggesting it is systematic rather than configuration-specific.

Reproduction
------------
Same failure, different machine:

  nvidia-open-kernel-dkms  550.163.01-2
  dkms                     3.2.2-1~deb13u1
  gcc                      Debian 14.2.0-19 (14.2.0)
  Debian GNU/Linux 13 (trixie)
  GPU: NVIDIA GA106M [GeForce RTX 3060 Mobile / Max-Q] [10de:2520]
       (hybrid/Optimus alongside Intel Alder Lake-P Iris Xe)

Build against 6.12.100+deb13-amd64 fails at the same location:

  nvidia/nv-pci.c:237:9: error: too few arguments to function
  'pci_resize_resource'

Building the same source against 6.12.96+deb13-amd64 succeeds.

Root cause
----------
The prototype gained a fourth parameter between the two kernels.

6.12.96, /usr/src/linux-headers-6.12.96+deb13-common/include/linux/pci.h:1421

  int __must_check pci_resize_resource(struct pci_dev *dev, int i, int size);

6.12.100, /usr/src/linux-headers-6.12.100+deb13-common/include/linux/pci.h:1421

  int __must_check pci_resize_resource(struct pci_dev *dev, int i, int size,
                                       int exclude_bars);

Why this is not configuration-dependent
---------------------------------------
This is the part I think is worth adding to the report: the driver has no
compatibility shim for this symbol at all.

1. pci_resize_resource appears exactly once in the unpacked source tree:

     $ grep -rn pci_resize_resource . --include='*.c' --include='*.h'
     ./nvidia/nv-pci.c:237:    r = pci_resize_resource(pci_dev, NV_GPU_BAR1, requested_size);

2. conftest.sh does not probe it:

     $ grep -c pci_resize_resource conftest.sh
     0

   ...while it does probe many other PCI symbols (pci_bus_address,
   pci_channel_state, pci_enable_msix_range, pci_get_domain_bus_and_slot,
   pci_driver_has_driver_managed_dma, and others), which is the mechanism
   the driver normally uses to absorb this kind of API change.

3. The call site is not inside any preprocessor conditional. The nearest
   #endif above it closes an unrelated
   NV_IS_EXPORT_SYMBOL_PRESENT_pci_find_host_bridge block.

So the call is unconditional and there is no code path that can adapt to the
new signature. Any build of 550.163.01 against a kernel carrying the
4-argument prototype will fail identically, regardless of GPU model, Optimus
versus discrete-only, or local configuration.

Scope across suites
-------------------
No currently packaged revision fixes this:

  bookworm          535.261.03-1
  trixie            550.163.01-2
  trixie-backports  550.163.01-4~bpo13+1
  sid               550.163.01-4
  experimental      555.58.02-2

trixie-backports is worth calling out explicitly, since it is the natural
first thing an affected user will reach for. It is the same upstream
550.163.01, and the Debian revisions since -2 do not touch this code path:
per the changelog, -3 backported the NV_DMA_BUF_HAS_DYNAMIC_ATTACHMENT
changes to fix the open kernel module build for Linux 6.16, and -4 was a
sync with src:nvidia-graphics-drivers. Installing the backport rebuilds the
same source and fails the same way.

Impact
------
The DKMS failure makes the linux-image postinst exit non-zero, which leaves
the kernel packages unconfigured and blocks dpkg:

  iF  linux-image-6.12.100+deb13-amd64
  iU  linux-image-amd64
  iU  linux-headers-6.12.100+deb13-amd64
  iU  linux-headers-amd64

Users who reboot into 6.12.100 before noticing will come up with no NVIDIA
driver. On this machine the other DKMS modules (acpi-call, kbdlight, xtrx)
all built successfully against 6.12.100; nvidia-current-open was the only
failure.

I have not checked whether nvidia-kernel-dkms (non-free) shares this call
site and is affected in the same way. It is not installed here, so I cannot
confirm either way.

Workaround
----------
Staying on 6.12.96+deb13-amd64, with linux-image-amd64 and
linux-headers-amd64 held, until a fixed driver is available.

#1143204#21
Date:
2026-08-03 17:57:01 UTC
From:
To:
*** Reporter, please consider answering these questions, where appropriate ***

   * What led up to the situation?
sudo apt upgrade
install linux-image-6.12.100+deb13-amd64
that trigger build of module in nvidia-open-kernel-dkms
   * What exactly did you do (or not do) that was effective (or
I retested with 550.163.01-4~bpo13+1 (stable-backports)
same results with k6.12.100
     ineffective)?
the module build like with K6.12.63+deb13-amd64 and 6.12.90+deb13.1-amd64
On next post I will add the make.log
_resize_resource'
   * What outcome did you expect instead?

*** End of the template - remove these template lines ***

#1143204#26
Date:
2026-08-09 13:29:17 UTC
From:
To:
happen also with kernel 6.12.101+deb13-amd64
same error

#1143204#31
Date:
2026-08-10 07:15:31 UTC
From:
To:
tags 1143204 + patch

I submitted https://salsa.debian.org/nvidia-team/nvidia-open-gpu-kernel-modules/-/merge_requests/3
as the patch to address this issue.