Package: nvidia-driver Version: 615.71.10-1 Severity: normal Tags: upstream
Dear Debian NVIDIA maintainers, On Debian 13, a GeForce RTX 5060 Ti in Legacy BIOS/CSM mode hangs during console restoration when shutting down or unloading nvidia_drm. Preserving GRUB's graphical framebuffer with GRUB_GFXPAYLOAD_LINUX=keep restored normal shutdown in a controlled user test. I am reporting this as additional Debian-specific evidence and a possible documentation/workaround candidate. Important packaging qualification: 615.71.10-1 is not the stock trixie NVIDIA driver. I am not claiming reproduction with Debian's stock 550-series package. Please reassign/close as appropriate if this is outside the scope of the Debian package; the upstream issue is already known: https://github.com/NVIDIA/open-gpu-kernel-modules/issues/1222 Environment: - Debian GNU/Linux 13 (trixie), amd64 - Linux 6.12.111+deb13-amd64, Debian kernel 6.12.111-1 - grub-pc, grub-common, grub2-common: 2.12-9+deb13u2 - systemd: 257.13-1~deb13u1 - NVIDIA open kernel module and core user-space libraries: 615.71.10 - GPU: Palit GeForce RTX 5060 Ti, PCI ID 10de:2d04 (GB206) - Motherboard: ASUS PRIME H510M-D, BIOS 2803 (2025-12-09) - Boot mode: Legacy BIOS; /sys/firmware/efi is absent - Cinnamon/X11, LightDM - nvidia_drm modeset=1 and fbdev=1 Original behavior: Normal poweroff stops services and reaches systemd-shutdown. The display turns off, but the case/fans remain powered for more than three minutes. Windows shuts down normally on the same machine. The shutdown problem was also observed with NVIDIA 590.48.01, before upgrading to 615.71.10. A text-only boot with nvidia/nvidia_drm/nvidia_modeset/nvidia_uvm and nouveau/nova_core blacklisted powered off normally. This was a diagnostic control, not a proposed solution. Direct reproduction while journald and the root filesystem were available: 1. Close the graphical session by stopping LightDM. 2. Stop BOINC and nvidia-persistenced. 3. Verify that no process has open /dev/nvidia* or /dev/dri/* descriptors. 4. Detach the framebuffer vtconsole (write 0 to its bind attribute). 5. rmmod nvidia_uvm succeeds. 6. rmmod nvidia_drm hangs; its process stays in R state. The kernel watchdog captured the following chain, including a soft lockup of 208 seconds in the rmmod process (addresses and local identifiers omitted): nv_drm_remove_devices.cold [nvidia_drm] nv_drm_dev_unload [nvidia_drm] ReleaseOwnership [nvidia_modeset] nvkms_ioctl_from_kapi [nvidia_modeset] nvKmsIoctl [nvidia_modeset] ReleaseOwnership [nvidia_modeset] RestoreConsole [nvidia_modeset] nvFreeCoreChannelEvo [nvidia_modeset] nvRmVTSwitch [nvidia_modeset] nvRmApiControl [nvidia_modeset] nvkms_call_rm [nvidia_modeset] Nv04ControlKernel [nvidia] _nv04ControlWithSecInfo [nvidia] rmapiControlWithSecInfoTls [nvidia] rmapiControlWithSecInfo [nvidia] _rmapiRmControl [nvidia] serverControl [nvidia] gpuresControl_IMPL [nvidia] resControl_IMPL [nvidia] deviceCtrlCmdOsUnixVTSwitch_IMPL [nvidia] unixCallVideoBIOS [nvidia] nv_vbios_call [nvidia] X86EMU_exec [nvidia] x86emuOp_in_word_AX_DX [nvidia] os_io_read_dword [nvidia] Before the workaround, the boot log showed: Console: colour VGA+ 80x25 Controlled workaround: A separate GRUB entry used the exact same kernel, initramfs, Linux command line and NVIDIA module parameters. Only these GRUB commands were added: load_video set gfxpayload=keep The user confirmed normal shutdown with this entry. This matches another user's independently reported workaround in upstream issue #1222. The boot log then showed a VESA 1920x1080x32 mode before NVIDIA initialized. There were vesafb reservation/ioremap warnings, so this report does not claim that vesafb itself successfully registered; the confirmed difference is the boot display handoff and the observed shutdown result. The persistent local equivalent now uses: /etc/default/grub.d/90-nvidia-framebuffer.cfg: GRUB_GFXPAYLOAD_LINUX=keep followed by update-grub. grub-mkconfig correctly emits linux_gfx_mode=keep and load_video/gfxmode for all Linux entries. No driver options, initramfs changes, forced module removal or custom shutdown hooks are needed for this local workaround. The permanent generated configuration has been statically verified; future updates and all power-management scenarios have not been exhaustively tested. Please consider documenting the Legacy BIOS/Blackwell interaction and the per-host GRUB workaround, or coordinating with upstream on a bounded/safe console-restoration path. This is not a request to force gfxpayload=keep on all Debian systems. Full raw logs are intentionally not attached to avoid exposing unrelated host/user information. Thank you.

