I have an optimus laptop, and after the update to KDE6 optimus-manager stopped working. I needed a second display, and all my display outputs are on the Nvdia GPU, so I needed to switch. I tried many different X11 configs, envycontrol then more X11 configs, but I couldn't get it working right, it would only be the internal display or the external one, not both. after a few hours I gave up and tried optimus-manager again. This time I checked the error log and it was failing to load the nvidia module, I tried loading it manually but I got a "No such device" error, which is where the title of the post comes in. My GPU has disappeared from linux, it won't show up in lspci, lshw, nvidia-smi, or anything else it should. The only reference to the thing in dmesg I can find are :
[ 0.216410] pci 0000:01:00.0: [10de:1ba1] type 00 class 0x030000
[ 0.216419] pci 0000:01:00.0: reg 0x10: [mem 0xde000000-0xdeffffff]
[ 0.216427] pci 0000:01:00.0: reg 0x14: [mem 0xc0000000-0xcfffffff 64bit pref]
[ 0.216435] pci 0000:01:00.0: reg 0x1c: [mem 0xd0000000-0xd1ffffff 64bit pref]
[ 0.216440] pci 0000:01:00.0: reg 0x24: [io 0xe000-0xe07f]
[ 0.216445] pci 0000:01:00.0: reg 0x30: [mem 0xdf000000-0xdf07ffff pref]
[ 0.216460] pci 0000:01:00.0: Enabling HDA controller
[ 0.257300] pci 0000:01:00.0: vgaarb: bridge control possible
[ 0.257300] pci 0000:01:00.0: vgaarb: VGA device added: decodes=io+mem,owns=none,locks=none
[ 0.270521] pci 0000:01:00.1: D0 power state depends on 0000:01:00.0
and then nothing, it doesn't even seem to try to load the nvidia module. I tried booting into windows and it shows up there fine, so the GPU didn't randomly die.
As far as I can tell I've rolled back everything I did in my histfile until it stopped working, The only thing I could think is I upgraded my kernel to (6.7.9) from (6.6.10), could that have caused it? I also tried adding pcie_port_pm=off
to the kernel params from the archwiki, but still nothing. I'm just at a loss here, anyone have any ideas?
EDIT: I'm using the nvidia-dkms package
EDIT2: one kernel downgrade later and it's still not appearing, so thats not it.
EDIT3: fixed, see comments
Looks like you where right about the udev rules earlier, I ran a pacman command to find all untracked files in /usr and I found /usr/lib/udev/rules.d/50-remove-nvidia.rules was there. Contents:
looks like EnvyControl left some extra files after uninstalling.
Personally, I think it's pretty weird that it put runtime files in /usr/lib, if they where in /etc I would have found them quickly.
The GPU is back on the bus now and I can run optimus-manager to get my extra screen. Thank you for the help troubleshooting this issue.