Nvidia-settings: "An internal driver error occurred"

I’m trying to run nvidia-settings:

% sudo nvidia-settings 
ERROR: An internal driver error occurred
ERROR: Unable to load info from any available system

% nvidia-smi
Unable to determine the device handle for GPU 0000:01:00.0: Unknown Error
% mhwd -li
> Installed PCI configs:
--------------------------------------------------------------------------------
                  NAME               VERSION          FREEDRIVER           TYPE
--------------------------------------------------------------------------------
     video-modesetting            2020.01.13                true            PCI
video-hybrid-intel-nvidia-prime            2021.11.04               false            PCI
Dec 15 15:50:37 svelte kernel: NVRM: loading NVIDIA UNIX x86_64 Kernel Module  495.44  Fri Oct 22 06:13:12 UTC 2021
Dec 15 15:50:37 svelte systemd-udevd[459]: nvidia: Process '/usr/bin/bash -c '/usr/bin/mknod -Z -m 666 /dev/nvidiactl c $(grep nvidia-frontend /proc/devices | cut -d \  -f 1) 255'' failed with exit code 1.
Dec 15 15:50:37 svelte systemd-udevd[452]: nvidia: Process '/usr/bin/bash -c '/usr/bin/mknod -Z -m 666 /dev/nvidiactl c $(grep nvidia-frontend /proc/devices | cut -d \  -f 1) 255'' failed with exit code 1.
Dec 15 15:50:37 svelte systemd-udevd[452]: nvidia: Process '/usr/bin/bash -c 'for i in $(cat /proc/driver/nvidia/gpus/*/information | grep Minor | cut -d \  -f 4); do /usr/bin/mknod -Z -m 666 /dev/nvidia${i} c $(grep nvidia-frontend /proc/devices | cut -d \  -f 1) ${i}; done'' failed with exit code 1.

Based on the above dmesg failed commands:

% cat /proc/driver/nvidia/gpus/*/information                       
Model: 		 Unknown
IRQ:   		 191
GPU UUID: 	 GPU-e2905ab5-ca65-1c30-60e5-5bee3a6bb804
Video BIOS: 	 ??.??.??.??.??
Bus Type: 	 PCIe
DMA Size: 	 47 bits
DMA Mask: 	 0x7fffffffffff
Bus Location: 	 0000:01:00.0
Device Minor: 	 0
GPU Excluded:	 No
% sudo /usr/bin/mknod -Z -m 666 /dev/nvidiactl c $(grep nvidia-frontend /proc/devices | cut -d \  -f 1) 255                       
/usr/bin/mknod: /dev/nvidiactl: File exists
% inxi -G      
Graphics:
  Device-1: Intel TigerLake-LP GT2 [Iris Xe Graphics] driver: i915 v: kernel
  Device-2: NVIDIA TU117M [GeForce MX450] driver: nvidia v: 495.44
  Device-3: IMC Networks USB2.0 HD UVC WebCam type: USB driver: uvcvideo
  Display: x11 server: X.Org 1.21.1.1 driver: loaded: modesetting
    unloaded: nvidia resolution: 1: 1920x1080~60Hz 2: 1920x515~60Hz
  Message: Unable to show advanced data. Required tool glxinfo missing.
% 

You’re using the modesetting driver, that has to be blacklisted on boot to use non free nvidia driver.

@h2-1 @Ataraxy is using PRIME
Which means the nvidia isnt initialized unless using prime-run
ex:

glxinfo | grep 'renderer string'
prime-run glxinfo | grep 'renderer string'

https://wiki.manjaro.org/index.php/Configure_Graphics_Cards#nvidia-prime

Oh, that explains it, I’ve never interacted with prime.I’d assume that the nvidia module is unloaded then, which is why the nvidia settings won’t work.

yup … prime-run nvidia-settings or sudo prime-run nvidia-settings -c :8 (maybe the c 8 is no longer necessary…) if they are trying to do that sudo thing to save xconfig files, because nvidia is dumb.

I have to admit, I supported/aka wasted time, on nvidia for years via the sgfxi project, though to be fair, AMD/ATI was not adequate until relatively recently, but I recently waved the white flag and bought used AMD gfx cards and dumped my nvidia cards, and now am off the non free graphics driver train for good. Got sick of having to toss perfectly good nvidia cards just because the driver no longer supported them, have a small stack of them. Got used AMD cards for almost nothing and am now a happy non worrying non nvidia users. I was trying to use nouveau for a few months before giving up, but it also is not adequate and led to frequent desktop failures, particularly on suspend/hybernate events like failing to wake or sleep.

All 4 combinations with/without sudo and -c :8 produce at least one ERROR.

But with -c :8, it’s only one:

ERROR: Unable to find display on any available system

I think the cause may be pointed at by the dmesg output above. Does that dmesg output seem right to you?