NVIDIA Open GPU Kernel Modules Version
610.57.04 (release build, notroot@, Aug 5 2026)
Please confirm this issue does not happen with the proprietary driver (of the same version).
Operating System and Version
CachyOS (Arch-based), kernel 7.2.0-rc6-1-cachyos-rc
Hardware: GPU
NVIDIA GeForce RTX 5090 Laptop GPU (10de:2c58) on ASUS ROG Zephyrus G16 (GU605CX), at PCI 0000:01:00.0 under root port 0000:00:01.0. Intel Arc iGPU is the display GPU.
Describe the bug
Switching the GPU mode to "integrated" (via cardwire, a supergfxctl successor that only eBPF-blocks process access to the dGPU — it writes nothing to sysfs) makes the dGPU disappear from the PCI bus within 1–2 seconds, while fully in D0. The driver is never notified:
nv_pci_remove is never called (kprobe-verified), no Xid, no kernel message of any kind (dmesg stays empty even with NVreg_EnableStreamDebug=1 and NVreg_EnableGPUResetLogging=1)
nv_pmops_runtime_suspend / nv_pmops_runtime_resume are never called — this is not a runtime-D3 transition (kprobe-verified; power/control=on does not prevent it)
nv_acpi_d3cold_dsm_for_upstream_port is never called
- cardwire's power tracker polls
power_state throughout the event: it goes D0 → device gone, never D3Cold
- Result:
/proc/driver/nvidia/gpus/0000:01:00.0 persists forever, power state frozen at "Video Memory: Active", /dev/nvidia0..nvidiactl persist, and the rail stays powered (GPU temp ~53C, ~20W on AC) while the device is "gone"
The device is revived (re-enumerates, driver re-binds) by switching back to "hybrid" or replugging AC — no reboot needed.
To Reproduce
- Boot hybrid mode (dGPU on the bus, driver bound,
NVreg_DynamicPowerManagement=0x02)
cardwire set integrated (or unplug AC — cardwire auto-switches to integrated)
- Within ~1–2 s:
lspci no longer lists 0000:01:00.0; driver frozen as described
cardwire set hybrid → device returns
Same result with NVreg_EnableS0ixPowerManagement=1 and with power/control=on pinned.
Bug Incidence
Always (10+ reproductions, identical).
nvidia-bug-report.log.gz
Full bug report + strace of the daemon + evidence write-up (kprobe setup/results, dmesg, timeline):
https://gist.github.com/Kiraprint/d7c4441a1d3f3bf58f6bb1a84fe4fb9e
More Info
The removal is performed by the platform/EC with no software-layer participation: not the driver (0 kprobe events), not the RM/GSP firmware (StreamDebug dmesg empty), not kernel PCI PM (control=on irrelevant). The trigger is the fully-blocked+idle state. The defect we'd like fixed: the driver does not handle device loss — no remove callback, no Xid, no cleanup, perpetual stale device state — whereas a graceful "GPU has fallen off the bus" (Xid 79-style) path would let the driver clear the device and the user recover without reboot.
NVIDIA Open GPU Kernel Modules Version
610.57.04 (release build, notroot@, Aug 5 2026)
Please confirm this issue does not happen with the proprietary driver (of the same version).
(Not tested — only the open module is installed on this system.)
Operating System and Version
CachyOS (Arch-based), kernel 7.2.0-rc6-1-cachyos-rc
Hardware: GPU
NVIDIA GeForce RTX 5090 Laptop GPU (10de:2c58) on ASUS ROG Zephyrus G16 (GU605CX), at PCI 0000:01:00.0 under root port 0000:00:01.0. Intel Arc iGPU is the display GPU.
Describe the bug
Switching the GPU mode to "integrated" (via cardwire, a supergfxctl successor that only eBPF-blocks process access to the dGPU — it writes nothing to sysfs) makes the dGPU disappear from the PCI bus within 1–2 seconds, while fully in D0. The driver is never notified:
nv_pci_removeis never called (kprobe-verified), no Xid, no kernel message of any kind (dmesg stays empty even withNVreg_EnableStreamDebug=1andNVreg_EnableGPUResetLogging=1)nv_pmops_runtime_suspend/nv_pmops_runtime_resumeare never called — this is not a runtime-D3 transition (kprobe-verified;power/control=ondoes not prevent it)nv_acpi_d3cold_dsm_for_upstream_portis never calledpower_statethroughout the event: it goesD0→ device gone, never D3Cold/proc/driver/nvidia/gpus/0000:01:00.0persists forever, power state frozen at "Video Memory: Active",/dev/nvidia0..nvidiactlpersist, and the rail stays powered (GPU temp ~53C, ~20W on AC) while the device is "gone"The device is revived (re-enumerates, driver re-binds) by switching back to "hybrid" or replugging AC — no reboot needed.
To Reproduce
NVreg_DynamicPowerManagement=0x02)cardwire set integrated(or unplug AC — cardwire auto-switches to integrated)lspcino longer lists 0000:01:00.0; driver frozen as describedcardwire set hybrid→ device returnsSame result with
NVreg_EnableS0ixPowerManagement=1and withpower/control=onpinned.Bug Incidence
Always (10+ reproductions, identical).
nvidia-bug-report.log.gz
Full bug report + strace of the daemon + evidence write-up (kprobe setup/results, dmesg, timeline):
https://gist.github.com/Kiraprint/d7c4441a1d3f3bf58f6bb1a84fe4fb9e
More Info
The removal is performed by the platform/EC with no software-layer participation: not the driver (0 kprobe events), not the RM/GSP firmware (StreamDebug dmesg empty), not kernel PCI PM (
control=onirrelevant). The trigger is the fully-blocked+idle state. The defect we'd like fixed: the driver does not handle device loss — no remove callback, no Xid, no cleanup, perpetual stale device state — whereas a graceful "GPU has fallen off the bus" (Xid 79-style) path would let the driver clear the device and the user recover without reboot.