Computer does not boot correctly after upgrade to leap 16.0

I upgraded my desktop computer from leap 15.6 to 16.0 with opensuse-migration-tool. When that was completed, I rebooted.
The computer starts, but after the grub menu stays in a low resolution mode (I have a 4K monitor), it switches to graphic mode but does not go further that a black screen and an active mouse cursor.
With Ctrl-Alt-F1 I get to the messages. I see 6 FAILED lines and the last line is

Starting NVIDIA Persistence Daemon...

That is it for at least 30 minutes.
The 6 FAILED lines are

[FAILED] Failed to start D-Bus System Message Bus.
[FAILED] Failed to start Avahi mDNS/DNS-MD stack.
[FAILED] Failed to start Bluetooth service.
[FAILED] Failed to start User Login Management.
[FAILED] Failed to start Authorization Manager.
[FAILED] Failed to start D-Bus System Message Bus.

With Ctrl-Alt-Del I rebooted my computer and chose in the grub menu advanced options to boot Leap 16.0, with Linux 6.12.0-160000.8-default (recovery mode). I logged in as root in console mode.
I copied /etc/ and the recent logs in /var/log to a USB-stick as well as the output of journalctl -xe. I modified /etc/default/grub as it contained selinux commands where I don’t use selinux (I learned that in my forum post about problems with the upgrade of my laptop to Leap 16, ‘computer gets stuck in booting Leap 16, 2025-12-11’) and reboot again -same behaviour.

File /etc/grub/default contains a line

GRUB_CMDLINE_LINUX_DEFAULT="nosplash quiet showopts mitigations=auto rd.driver.blacklist=nouveau"

What must I do to get Leap 16.0 boot normally (in Plasma and 4K resolution)?
I can upload files/file content from the files and output I managed to copy to USB-stick, just tell me what is needed.

You need to check/install the Nvidia drivers. Dependend how old your card is, be aware, that only the G06 aka v580 driver series is available in Leap 16.

If your card is to old and you need G04 or G05 drivers, you only can remove the nouveau blacklist (see your kernel command line) and work with the nouveau drivers.

Show
zypper lr -d
inxi -GSaz
zypper se -si nvidia

To make your life easier (and have at least a low resulution GUI), you might temporary add “nomodeset” to the kernel command line:

  • When you are at grub boot loader screen, simply hit “e”
  • Navigate with the arrow keys to the line which starts with “linux”
  • Hit “end” at your keyboard
  • Put a blank and nomodeset at the end of this line
  • Hit “F10”

The Nvidia drivers where installed with openSUSE-repos-Leap-NVIDIA in Leap 15.6.

zypper lr -d:

# | Alias                       | Name                      | Enabled | GPG Check | Refresh | Keep | Priority | Type   | URI                                                                         | Service
--+-----------------------------+---------------------------+---------+-----------+---------+------+----------+--------+-----------------------------------------------------------------------------+---------
1 | NVIDIA:repo-non-free        | repo-non-free (16.0)      | Ja      | (r ) Ja   | Ja      | -    |   99     | rpm-md | https://download.nvidia.com/opensuse/leap/16.0                              | NVIDIA
2 | network_vpn                 | VPN (openSUSE_Leap_16.0)  | Nee     | ----      | ----    | -    |   99     | rpm-md | https://download.opensuse.org/repositories/network:/vpn/openSUSE_Leap_16.0/ | 
3 | openSUSE:repo-non-oss       | repo-non-oss (16.0)       | Nee     | ----      | ----    | -    |   99     | rpm-md | http://cdn.opensuse.org/distribution/leap/16.0/repo/non-oss/x86_64          | openSUSE
4 | openSUSE:repo-non-oss-debug | repo-non-oss-debug (16.0) | Nee     | ----      | ----    | -    |   99     | N/A    | http://cdn.opensuse.org/debug/distribution/leap/16.0/repo/non-oss/x86_64    | openSUSE
5 | openSUSE:repo-openh264      | repo-openh264 (16.0)      | Ja      | (r ) Ja   | Ja      | -    |   99     | rpm-md | http://codecs.opensuse.org/openh264/openSUSE_Leap_16                        | openSUSE
6 | openSUSE:repo-oss           | repo-oss (16.0)           | Ja      | (r ) Ja   | Ja      | -    |   99     | rpm-md | http://cdn.opensuse.org/distribution/leap/16.0/repo/oss/x86_64              | openSUSE
7 | openSUSE:repo-oss-debug     | repo-oss-debug (16.0)     | Nee     | ----      | ----    | -    |   99     | N/A    | http://cdn.opensuse.org/debug/distribution/leap/16.0/repo/oss/x86_64        | openSUSE
8 | openSUSE:repo-oss-source    | repo-oss-source (16.0)    | Nee     | ----      | ----    | -    |   99     | N/A    | http://cdn.opensuse.org/source/distribution/leap/16.0/repo/oss              | openSUSE
9 | packman-essentials          | packman-essentials        | Nee     | ----      | ----    | -    |   90     | rpm-md | https://ftp.fau.de/packman/suse/openSUSE_Leap_16.0/Essentials               | 

inxi -GSaz:

System:
  Kernel: 6.12.0-160000.8-default arch: x86_64 bits: 64 compiler: gcc v: 13.4.0 clocksource: tsc
    avail: hpet,acpi_pm parameters: BOOT_IMAGE=/boot/vmlinuz-6.12.0-160000.8-default
    root=UUID=9bf27833-79d4-463a-be47-994d15099b80 single
  Console: tty 1 DM: SDDM Distro: openSUSE Leap 16.0
Graphics:
  Device-1: NVIDIA GP108 [GeForce GT 1030] vendor: Micro-Star MSI driver: nvidia v: 580.119.02
    alternate: nouveau,nvidia_drm non-free: 550.xx+ status: current (as of 2024-09; EOL~2026-12-xx)
    arch: Pascal code: GP10x process: TSMC 16nm built: 2016-2021 pcie: gen: 1 speed: 2.5 GT/s
    lanes: 4 link-max: gen: 3 speed: 8 GT/s ports: active: HDMI-A-1 empty: DP-1 bus-ID: 07:00.0
    chip-ID: 10de:1d01 class-ID: 0300
  Display: server: X.org v: 1.21.1.15 with: Xwayland v: 24.1.6 driver: X: loaded: nvidia
    unloaded: modesetting,nouveau,vesa alternate: fbdev,nv gpu: nvidia,nvidia-nvswitch tty: 480x135
  Monitor-1: HDMI-A-1 model: Samsung LS32A80 serial: <filter> built: 2024 res: 3840x2160
    dpi: 139 gamma: 1.2 size: 698x393mm (27.48x15.47") diag: 806mm (31.7") ratio: 16:9 modes:
    max: 3840x2160 min: 640x480
  API: EGL v: 1.5 hw: drv: nvidia platforms: device: 0 drv: nvidia gbm: drv: nvidia surfaceless:
    drv: nvidia inactive: wayland,x11
  API: OpenGL v: 4.6.0 vendor: nvidia v: 580.119.02 note: console (EGL sourced) renderer: NVIDIA
    GeForce GT 1030/PCIe/SSE2
  API: Vulkan v: 1.4.309 layers: 3 device: 0 type: discrete-gpu name: NVIDIA GeForce GT 1030
    driver: N/A device-ID: 10de:1d01 surfaces: N/A device: 1 type: discrete-gpu
    name: NVIDIA GeForce GT 1030 driver: N/A device-ID: 10de:1d01 surfaces: N/A

zypper se -si nvidia:

Bezig met ophalen van installatiebrongegevens…
Bezig met inlezen van geïnstalleerde pakketten…

S  | Name                          | Type   | Version                                | Arch   | Repository
---+-------------------------------+--------+----------------------------------------+--------+---------------------
i+ | kernel-firmware-nvidia        | pakket | 20250516-160000.2.2                    | noarch | repo-oss (16.0)
i+ | libnvidia-egl-gbm1            | pakket | 1.1.2-160000.3.2                       | x86_64 | repo-oss (16.0)
i  | libnvidia-egl-wayland1        | pakket | 1.1.20-lp160.52.2                      | x86_64 | repo-non-free (16.0)
i  | libnvidia-egl-x111            | pakket | 1.0.3-lp160.21.3                       | x86_64 | repo-non-free (16.0)
i+ | libnvidia-gpucomp             | pakket | 580.119.02-lp160.43.1                  | x86_64 | repo-non-free (16.0)
i+ | nvidia-common-G06             | pakket | 580.119.02-lp160.43.1                  | x86_64 | repo-non-free (16.0)
i+ | nvidia-compute-G06            | pakket | 580.119.02-lp160.43.1                  | x86_64 | repo-non-free (16.0)
i+ | nvidia-compute-utils-G06      | pakket | 580.119.02-lp160.43.1                  | x86_64 | repo-non-free (16.0)
i+ | nvidia-driver-G06-kmp-default | pakket | 580.119.02_k6.12.0_160000.7-lp160.43.1 | x86_64 | repo-non-free (16.0)
i+ | nvidia-driver-G06-kmp-meta    | pakket | 580.119.02-lp160.26.1                  | x86_64 | repo-non-free (16.0)
i+ | nvidia-gl-G06                 | pakket | 580.119.02-lp160.43.1                  | x86_64 | repo-non-free (16.0)
i+ | nvidia-modprobe               | pakket | 580.119.02-lp160.21.1                  | x86_64 | repo-non-free (16.0)
i+ | nvidia-persistenced           | pakket | 580.119.02-lp160.2.1                   | x86_64 | repo-non-free (16.0)
i+ | nvidia-userspace-meta-G06     | pakket | 580.119.02-lp160.26.1                  | x86_64 | repo-non-free (16.0)
i+ | nvidia-video-G06              | pakket | 580.119.02-lp160.43.1                  | x86_64 | repo-non-free (16.0)
i+ | openSUSE-repos-Leap-NVIDIA    | pakket | 20250714.a450212-lp160.3.1             | x86_64 | repo-oss (16.0)

Sorry for the delay, transferring via USB takes some time.
And sorry for the language setting, I will try to set it to en.

Ok, the graphic drivers are fine.

Then it is possibly a SELinux problem.
You might wait for some ppl which can advise further with SELinux.

You might been hit by this bug:
https://bugzilla.opensuse.org/show_bug.cgi?id=1255897

As I don’t use SELinux, I have /etc/selinux/config emptied and removed some commands in /etc/default/grub after the upgrade, but that didn’t help.

Have you tried to boot with selinux=0 as descreibed in the Bugreport?

No, I have not yet. How do I pass the selinux=0 command to kernel options, by putting it in ```
GRUB_CMDLINE_LINUX_DEFAULT

in /etc/default/grub?

As described in my first response. Instead of “nomodeset” you put “selinux=0”.

Ah, clear.
That helps, the computer now starts with the plasma login screen (in high resolution) and I can log in and probably work on it as I used to.
However, simply rebooting doesn’t work (yet).
Should I put the ‘selinux=0’ in a configuration file?

@Dnk1287 Is it using Aparmor instead of SELinux?

When upgrading SELinux was installed and AppArmor was removed by opensuse-migration-tool.

@Dnk1287 Then re-enable and set to permissive instead?

Have a read here https://en.opensuse.org/Portal:SELinux and also check the troubleshooting link.

I managed to add ‘security selinux=0’ to GRUB_CMDLINE_LINUX_DEFAULT in grub and now it (re)starts normally.

Thank you all for your help!

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.