LEAP 15.4 X11 and Wayland not working after recent updates

Recent updates seem to have broken my GUI when using NVIDIA drivers.

  1. The x11-video-nvidiaG06 packages were no longer available. Seem to have been replaced with nvidia-video-G06? After that change my external monitor (HDMI) would only work with Wayland.

  2. Weekend updates (kernel and libav from what I can recall) left me with no GUI. (I currently need to add “nomodeset” to GRUB so as to get a graphical login)

  3. When force re-installing (sudo zypper in --force nvidia-driver-G06-kmp-default), I get the following failure:

dracut: *** Including module: kernel-modules-extra ***
realpath: updates/nvidia-modeset.ko: No such file or directory
realpath: updates/nvidia-peermem.ko: No such file or directory
realpath: updates/nvidia-drm.ko: No such file or directory
realpath: updates/nvidia-uvm.ko: No such file or directory
realpath: updates/nvidia.ko: No such file or directory
dracut: installkernel failed in module kernel-modules-extra
warning: %posttrans(nvidia-driver-G06-kmp-default-525.85.05_k5.14.21_150400.22-lp154.4.1.x86_64.rpm) scriptlet failed, exit status 1

As reference, here is the lspci output for my VGA:

00:02.0 VGA compatible controller [0300]: Intel Corporation TigerLake-H GT1 [UHD Graphics] [8086:9a60] (rev 01)
Subsystem: Acer Incorporated [ALI] Device [1025:153b]
Kernel modules: i915

01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GA106M [GeForce RTX 3060 Mobile / Max-Q] [10de:2520] (rev a1)
Subsystem: Acer Incorporated [ALI] Device [1025:1544]
Kernel modules: nouveau, nvidia_drm, nvidia

uname -r
5.14.21-150400.24.41-default

Current packages related to nvidia (sudo zypper se -si nvidia):

Loading repository data…
Reading installed packages…

S | Name | Type | Version | Arch | Repository
—±------------------------------±--------±---------------------------------------±-------±------------------------------------------------------------
i | kernel-firmware-nvidia | package | 20220509-150400.4.13.1 | noarch | Update repository with updates from SUSE Linux Enterprise 15
i | nvidia-compute-G06 | package | 525.85.05-lp154.4.1 | x86_64 | NVIDIA
i | nvidia-compute-G06-32bit | package | 525.85.05-lp154.4.1 | x86_64 | NVIDIA
i+ | nvidia-compute-utils-G06 | package | 525.85.05-lp154.4.1 | x86_64 | NVIDIA
i+ | nvidia-driver-G06-kmp-default | package | 525.85.05_k5.14.21_150400.22-lp154.4.1 | x86_64 | NVIDIA
i | nvidia-gl-G06 | package | 525.85.05-lp154.4.1 | x86_64 | NVIDIA
i | nvidia-gl-G06-32bit | package | 525.85.05-lp154.4.1 | x86_64 | NVIDIA
i+ | nvidia-utils-G06 | package | 525.85.05-lp154.4.1 | x86_64 | NVIDIA
i+ | nvidia-video-G06 | package | 525.85.05-lp154.4.1 | x86_64 | NVIDIA
i | nvidia-video-G06-32bit | package | 525.85.05-lp154.4.1 | x86_64 | NVIDIA

Any recommended way to further troubleshoot and resolve will be really appreciated.

Made some progress, following the thread at prime-select can't switch to nvidia - #11 by Quinix. The following works:

  1. sudo prime-select service restore
  2. sudo prime-select next-boot nvidia
  3. sudo init 6
  4. Login using Wayland = working GUI and second screen (HDMI)

Login with X11 has GUI but no extended desktop (i.e., second screen is not active). Any ideas why?

Strangely enough, the output from sudo prime-select get-current still says:

No driver configured

NVIDIA modules are loaded

Any suggestions as to why GUI works and second screen works, despite “no driver configured” being displayed?

@Nam_tech what is your end goal with the nvidia device? These newer cards work far better with nvidia prime offload rather than running all the time…

See Chapter 35. PRIME Render Offload

End goal is having dual-monitor setup. When not in NVIDIA mode, the HDMI port is “dead”. So far the only way to get extended desktop is using prime-select. I am definitely open to alternate suggestions…

@Nam_tech so when in X11, what is the output from xrandr --listproviders and xrandr --listmonitors from running with intel and nvidia (as in switch between both options).

Output from whilst in nvidia mode:

~> xrandr --listmonitors
Monitors: 1
0: +*eDP-1 1920/381x1080/214+0+0 eDP-1

~> xrandr --listproviders
Providers: number : 1
Provider 0: id: 0x46; cap: 0xf (Source Output, Sink Output, Source Offload, Sink Offload); crtcs: 4; outputs: 3; associated providers: 0; name: modesetting
output eDP-1
output DP-1
output DP-2

Output whilst in intel mode:

~> xrandr --listmonitors
Monitors: 1
0: +*eDP-1 1920/381x1080/214+0+0 eDP-1
~> xrandr --listproviders
Providers: number : 1
Provider 0: id: 0x46; cap: 0xf (Source Output, Sink Output, Source Offload, Sink Offload); crtcs: 4; outputs: 3; associated providers: 0; name: modesetting
output eDP-1
output DP-1
output DP-2

Running the last switch to “intel” somehow broke the NVIDIA, i.e., switching back to nvidia or using “next-boot nvidia” and rebooting just results in black screen. Setting “boot intel” gets laptop display running at least.

@Nam_tech So it looks like in either case it’s using the intel device, can you post the output from;

cat /proc/cmdline

/sbin/lspci -nnk | grep -EA 3 "VGA|Display|3D"
BOOT_IMAGE=/boot/vmlinuz-5.14.21-150400.24.41-default root=UUID=1963302d-3480-4c22-99ed-38dbeab1ea84 splash=silent mitigations=auto quiet

00:02.0 VGA compatible controller [0300]: Intel Corporation TigerLake-H GT1 [UHD Graphics] [8086:9a60] (rev 01)
        Subsystem: Acer Incorporated [ALI] Device [1025:153b]
        Kernel driver in use: i915
        Kernel modules: i915
--
01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GA106M [GeForce RTX 3060 Mobile / Max-Q] [10de:2520] (rev ff)
        Kernel modules: nouveau, nvidia_drm, nvidia
02:00.0 Non-Volatile memory controller [0108]: Kingston Technology Company, Inc. OM3PDP3 NVMe SSD [2646:500d] (rev 01)
        Subsystem: Kingston Technology Company, Inc. OM3PDP3 NVMe SSD [2646:500d]

Not to muddy the waters, but I do notice the prime-select.service is also failing to start.

@Nam_tech can you check the journal output for the service to see if can see why it’s not starting…

You could also see if forcing the re-install of the nvidia packages helps.

Post
zypper se -si kernel-default

@Svyatko that info is provided a few posts back…

Regarding prime-select.service, this is from manually trying to start it a moment ago:

Jan 30 18:55:26 systemd[1]: Starting SUSEPrime systemd service…
Jan 30 18:55:26 systemd[1]: prime-select.service: Deactivated successfully.
Jan 30 18:55:26 systemd[1]: Finished SUSEPrime systemd service.

And no, I did not stop the service. :sweat_smile:

@Nam_tech can you check /var/log or ~/.local/share/xorg directories for Xorg.0.log files and inspect for errors…

I’ll look through it once I have set it back to nvidia mode and restarted.

Before I do that, Is it normal for “cat /proc/acpi/bbswitch” to “not exist” when in NVIDIA mode, bit when in intel mode I get “0000:01:00.0 OFF”?

@Nam_tech is the bbswitch kmp installed?

Ok, back in graphical.

Regarding, bbswitch, definitely installed (currently in intel mode):

S | Name | Type | Version | Arch | Repository
—±---------------------±--------±--------------------------------------±-------±----------------------
i+ | bbswitch | package | 0.8-lp154.2.2.1 | x86_64 | Main Update Repository
i | bbswitch-kmp-default | package | 0.8_k5.14.21_150400.24.33-lp154.2.2.1 | x86_64 | Main Update Repository
~> cat /proc/acpi/bbswitch
0000:01:00.0 OFF

I got some (hopefully relevant) logs from being in nvidia mode:

From journalctl regarding prime-select.service:

Jan 30 19:23:21  kernel: [drm] Initialized nvidia-drm 0.0.0 20160202 for 0000:01:00.0 on minor 1
Jan 30 19:23:21  prime-select[1810]: /usr/sbin/prime-select: line 282: nvidia-xconfig: command not found
Jan 30 19:23:21  suse-prime[1813]: PCI BusID of NVIDIA card could not be detected!
Jan 30 19:23:21  prime-select[1416]: Configuration failed
Jan 30 19:23:21  suse-prime[1816]: Configuration failed
Jan 30 19:23:21  systemd[1]: prime-select.service: Main process exited, code=exited, status=1/FAILURE
Jan 30 19:23:21  systemd[1]: prime-select.service: Failed with result 'exit-code'.
Jan 30 19:23:21  systemd[1]: Failed to start SUSEPrime systemd service.

From journalctl regarding nvidia (just a grep for nvidia):

Jan 30 19:23:17  kernel: audit: type=1400 audit(1675099397.730:6): apparmor="STATUS" operation="profile_load" profile="unconfined" name="nvidia_modprobe" pid=660 comm="apparmor_parser"
Jan 30 19:23:17  kernel: audit: type=1400 audit(1675099397.730:7): apparmor="STATUS" operation="profile_load" profile="unconfined" name="nvidia_modprobe//kmod" pid=660 comm="apparmor_parser"
Jan 30 19:23:17  systemd-udevd[709]: /usr/lib/udev/rules.d/99-bumblebee-nvidia-dev.rules:10 Invalid value "/bin/bash -c '/bin/mknod -m 666 /dev/nvidia-uvm c $(grep nvidia-uvm /proc/devices | cut -d \  -f 1) 0;'" for RUN (char 51: invalid substitution type), ignoring.
Jan 30 19:23:19  suse-prime[1508]: Boot: forcing booting with nvidia, boot preference ignored
Jan 30 19:23:19  kernel: nvidia: module license 'NVIDIA' taints kernel.
Jan 30 19:23:19  kernel: nvidia: externally supported module, setting X kernel taint flag.
Jan 30 19:23:19  kernel: nvidia-nvlink: Nvlink Core is being initialized, major device number 235
Jan 30 19:23:19  kernel: nvidia 0000:01:00.0: enabling device (0006 -> 0007)
Jan 30 19:23:19  kernel: nvidia 0000:01:00.0: vgaarb: changed VGA decodes: olddecodes=io+mem,decodes=none:owns=none
Jan 30 19:23:20  kernel: nvidia_uvm: module uses symbols from proprietary module nvidia, inheriting taint.
Jan 30 19:23:20  kernel: nvidia_uvm: externally supported module, setting X kernel taint flag.
Jan 30 19:23:20  systemd-udevd[715]: nvidia_uvm: Process '/bin/bash -c '/bin/mknod -m 666 /dev/nvidia-uvm c $(grep nvidia-uvm /proc/devices | cut -d \  -f 1) 0;'' failed with exit code 1.
Jan 30 19:23:20  kernel: nvidia-uvm: Loaded the UVM driver, major device number 511.
Jan 30 19:23:20  kernel: nvidia_modeset: externally supported module, setting X kernel taint flag.
Jan 30 19:23:20  kernel: nvidia-modeset: Loading NVIDIA Kernel Mode Setting Driver for UNIX platforms  525.85.05  Sat Jan 14 00:40:03 UTC 2023
Jan 30 19:23:20  kernel: nvidia_drm: externally supported module, setting X kernel taint flag.
Jan 30 19:23:20  kernel: [drm] [nvidia-drm] [GPU ID 0x00000100] Loading driver
Jan 30 19:23:21  kernel: [drm] Initialized nvidia-drm 0.0.0 20160202 for 0000:01:00.0 on minor 1
Jan 30 19:23:21  prime-select[1810]: /usr/sbin/prime-select: line 282: nvidia-xconfig: command not found

And from Xorg.0.log:

[    28.378] (EE) modeset(G0): Failed to create pixmap
[    28.378] (EE) 
Fatal server error:
[    28.378] (EE) failed to create screen resources(EE) 
[    28.378] (EE) 
Please consult the The X.Org Foundation support 
	 at http://wiki.x.org
 for help. 
[    28.378] (EE) Please also check the log file at "/var/log/Xorg.0.log" for additional information.
[    28.378] (EE) 
[    28.378] (II) AIGLX: Suspending AIGLX clients for VT switch
[    28.410] (EE) Server terminated with error (1). Closing log file.

The last one is a paradox since it is the Xorg.0.log file.

After this error prime-select quits and does not proceed to configure NVIDIA. Is nvidia-xconfig present on your system?

It is not, but also cannot be located in the NVIDIA repo nor in the Main Repo:

sudo zypper se -s nvidia-xconfig
Loading repository data…
Reading installed packages…
No matching items found.

I am not sure I understand what you are trying to do. nvidia-xconfig is a program which may be provided by any package.

Fair enough. But as I have installed all nvidia-G06 related packages and it is not present, I also tried to see if it was available as a stand alone. No luck there either.