#1132490 nvidia-graphics-drivers: Patch series to port packaging from 550 to 580.142

#1132490#5
Date:
2026-04-01 17:24:04 UTC
From:
To:
I have a working patch series that ports nvidia-graphics-drivers packaging
from the 550 branch to upstream 580.142, plus matching version bumps for
the three companion packages (nvidia-settings, nvidia-modprobe,
nvidia-persistenced). All four build cleanly on trixie.

Patches are attached as a zip containing git format-patch output, one
folder per source package, against the current branches on Salsa.
Apply with: git am *.patch in each folder.

Motivation
----------

The 550 branch has accumulated 21 kernel backport patches to support Linux
6.13 through 6.19, and every kernel release requires more. Meanwhile, 555
has been in experimental since early 2026 with no progress toward sid.

580 eliminates all 21 backport patches (they are upstream), provides native
kernel 6.19 support, and fixes several real bugs:

  - nv_drm_revoke_modeset_permission WARNING storm on Wayland screen unlock,
    which stalls terminal multiplexers via printk (workaround: printk
    suppression in sysctl). Fixed properly in 580's DRM code.

  - 10-bit (ARGB2101010) DRM/KMS output on Wayland. The 550 driver's DRM
    path defaulted to 8bpc. 580 enables 10-bit from boot when the monitor
    supports it.

580 is also the last driver branch supporting Pascal GPUs (GTX 10-series).
NVIDIA 590 drops Pascal, so 580 is the long-term driver for those users.

Changes (nvidia-graphics-drivers, 8 patches)
---------------------------------------------

1. Update version to 580.142-1 (changelog, gbp.conf, watch)
2. Drop 23 backport and support-fallback patches (all upstream in 580)
3. Refresh retained patches: drop 3 more (min kernel version, warning
   fixes, BTF generation -- all fixed upstream), refresh 2 (typo fix
   dropped the nv.c hunk, use-kbuild-flags updated for 580's new
   filter-std line). 10 patches retained, all apply cleanly.
4. Add new 580 libraries to .install files (libnvidia-present,
   libnvidia-sandboxutils, libnvidia-egl-xcb/xlib, libnvidia-nvvm70,
   nvidia-suspend-then-hibernate.service)
5. Update GPU ID extraction regex for 580's wider README.txt columns
   (58 chars, was 41/49). Add JSON fallback for open kernel GPU IDs
   (580 removed the SUPPORTED GPUS section from README.txt).
6. Relax symbol checking (dh_makeshlibs -- -c0), skip copyright
   comparison (580 updated license text). Both marked as TODOs.
7. Refresh man page patch (nvidia-smi.1 reformatted upstream, keep
   nvidia-cuda-mps-control.1 typo fix only)
8. Install new EGL platform configs (20_nvidia_xcb.json,
   20_nvidia_xlib.json) and nvidia-pcc (Power and Clock Control tool)

Deliberately skipped: libnvidia-vksc-core.so (Vulkan Safety Critical,
not for desktop), nvngx_dlssg.dll (Windows DLSS DLL),
sandboxutils-filelist.json (metadata).

Companion packages (1 patch each, also attached)
-------------------------------------------------

  - nvidia-settings 580.142-1: all 6 patches apply cleanly. 580 ships
    libnvidia-wayland-client.so enabling nvidia-settings to run natively
    on Wayland (DISPLAY= nvidia-settings).
  - nvidia-modprobe 580.142-1: both patches apply cleanly.
  - nvidia-persistenced 580.142-1: all 3 patches apply cleanly.

Test results
------------

  - Debian trixie, kernel 6.19.8+deb14-amd64
  - GPU: GeForce GTX 1080 (Pascal), KDE Plasma 6 Wayland
  - 49 binary .deb packages from nvidia-graphics-drivers, clean build
  - Companion packages build clean (1 deb each)
  - DKMS module builds and loads against 6.19.8
  - nvidia-smi, VA-API (NVDEC), 10-bit DRM output all verified working
  - Screen lock/unlock cycle produces no kernel WARNINGs

TODOs for the team
------------------

  - Update .symbols files for new 580 exports (using -c0 for now)
  - Update debian/copyright for 580's revised license text
  - Test arm64 build
  - Review whether nvidia-pcc belongs in nvidia-driver-bin or its own
package

Thanks for maintaining these packages.

#1132490#10
Date:
2026-04-01 17:32:29 UTC
From:
To:

#1132490#15
Date:
2026-04-27 19:07:01 UTC
From:
To:
Hi,

I have built and installed nvidia-driver &co with these patches on forky
and confirmed that the driver works. The
nv_drm_revoke_modeset_permission log spam is also thankfully gone as
indicated above.

Thanks for your work in creating these patches. Hopefully the
nvidia-driver maintainer is able to review and apply them soon.

sney

#1132490#20
Date:
2026-05-09 19:31:06 UTC
From:
To:
I have built and installed the nvidia-driver and companion packages with the above patches on Debian Trixie (kernel 6.12.73+deb13-amd64) and can confirm they work.  Initial testing shows Wayland is (dare I say it?) usable with nvidia_drm.modeset=1.

I've tested this on two machines, both running Debian Trixie:

* Core i7 14700K w/ RTX 3090 (Ampere), inxi output below
* Core i7 7700 w/Quadro K620 (Maxwell)

The machine with the Quadro K620 drove two monitors via MST: 4k@60 + 4k@30.

  * Video decoding (4K video) worked fine with mpv -vo=gpu-next

The machine with the RTX 3090 drove 2x 4k@60 w/HDR and adaptive sync. This is a limitation of the monitors, not necessarily the card or drivers.

  * Video decoding (4K, 4K HDR, and 8K video) worked fine with mpv -vo=gpu-next
  * AI inference with ollama worked fine
  * No flickering or excessive redraws in applications that have suffered such in the past.

Have not tried any Steam games with either system.

$ inxi -GS
System:
  Host: llama Kernel: 6.12.73+deb13-amd64 arch: x86_64 bits: 64
  Desktop: KDE Plasma v: 6.3.6 Distro: Debian GNU/Linux 13 (trixie)
Graphics:
  Device-1: Intel Raptor Lake-S GT1 [UHD Graphics 770] driver: i915 v: kernel
  Device-2: NVIDIA GA102 [GeForce RTX 3090] driver: nvidia v: 580.142
  Device-3: Logitech Logi Webcam C930s driver: snd-usb-audio,uvcvideo
    type: USB
  Display: wayland server: X.org v: 1.21.1.16 with: Xwayland v: 24.1.6
    compositor: kwin_wayland driver: X: loaded: modesetting,nvidia
    unloaded: fbdev,nouveau,vesa dri: iris gpu: nvidia,nvidia-nvswitch
    resolution: 1: 3840x2160~60Hz 2: 3840x2160~60Hz
  API: EGL v: 1.5 drivers: iris,nvidia,swrast
    platforms: gbm,wayland,x11,surfaceless,device
  API: OpenGL v: 4.6.0 compat-v: 4.5 vendor: nvidia mesa v: 580.142
    renderer: NVIDIA GeForce RTX 3090/PCIe/SSE2
  API: Vulkan v: 1.4.309 drivers: nvidia,intel,llvmpipe
    surfaces: xcb,xlib,wayland
  Info: Tools: api: clinfo, eglinfo, glxinfo, vulkaninfo
    de: kscreen-console,kscreen-doctor gpu: nvidia-settings,nvidia-smi
    wl: wayland-info x11: xdriinfo, xdpyinfo, xprop, xrandr

#1132490#25
Date:
2026-05-15 19:09:00 UTC
From:
To:
Unfortunately, this patch set no longer builds with the current kernel
in forky, 7.0.4-1.

sney

#1132490#30
Date:
2026-05-24 07:55:42 UTC
From:
To:
The attached patches update to the latest upstream driver version 580.159.04 [1], which includes fixes for the Linux 7.0.x kernel series.

There are two tarballs attached to this message:

* nvidia-580.142-to-580.159.04-patches.tgz - Additional patches to be applied after Daniel's set.
* nvidia-550-to-580.159.04-patches.tgz - All required patches, including Daniel's.

I successfully built this on a Debian Forky VM running 7.0.7+deb14-amd64.  I can confirm that the packages install and the DKMS modules build against the 7.0.7+deb14-amd64 kernel.  I don't have a Forky system with an NVIDIA card to test if the drivers are functional.

[1] https://www.nvidia.com/en-us/drivers/details/271252/

#1132490#35
Date:
2026-05-24 08:34:55 UTC
From:
To:
Patch 10 was missing a hunk.  Here are corrected versions.
#1132490#40
Date:
2026-07-13 20:06:25 UTC
From:
To:
The same patches upgrading the package to 580.159.04 work with Linux 7.1.3-1.