Failed to Boot to Graphics

I upgraded from 15.1 to 15.2 using the network method. There was one checksum error with libswscale4, but I typed in the first four characters of the checksum to let it continue. I figured it would be replaced by a more up-to-date package from packman instead of the main update repo anyway.

No problems with grub2. Once a kernel is selected, no problem with seeing the updating three dots, nor switching to see loading logs.

% more /var/log/Xorg.0.log

“Failed to initialize the NVIDIA kernel module. Please see the system’s kernel log for additional error messages…”

“No devices detected.”

“no screens found(EE)”

% lsmod | grep nvidia

returned nothing, which probably means the kernel module didn’t load.

% uname -r

5.3.18-lp152.72-preempt

I’m using an older Nvidia GT240 card, which only has the nvidia-gfxG03-kmp-default module, not a -preempt version, like for G04 and G05. Using “zypper se nvidia-G03” does list the packages installed (i+).

By default, it appears that 15.2 sets grub2 to use the -preempt kernels, so my suspicion is that I need to switch grub2 to use the -default kernel.

I backed up /boot/grub2/grub.cfg and modified it to load -default instead of -preempt, which worked, but the nvidia kernel module still doesn’t load. lsmod still doesn’t have nvidia listed.

Oh, startx says “/usr/bin/Xorg is not setuid, maybe that’s the reason?”


  1. How do I properly configure grub2 to list the three -default kernels instead of the -preempt ones? grub2 currently only lists three choices, though I do see the -default ones as menuentry’s in the cfg file. I think I’ll need the -default kernels, as Nvidia doesn’t provide for -preempt for G03 era cards.

  2. Why isn’t the nvidia kernel module being loaded? nouveau is blacklisted in /etc/modprobe.d/nvidia.conf and nvidia-default.conf. Usually a conflict there causes the nvidia drivers not to load?

  3. What other checks can I do to get the GUI up?

Thanks for the help!

I never do that. On the rare occasions where I get a checksum error, I cancel and then try again a few hours later.

In your case, it looks as if the real problem is with the Nvidia drivers. Do you use “secure-boot”. If you do, then try turning that off and see if the graphics comes up that way.

What’s the version of your Nvidia driver?

rpm -qa |grep nvidia

the latest driver from cuda repository 465.* does not come with proper MOK keys and will fail to load unless if you disable secure boot as nrickert said.

To answer 1. just delete the preempt
2. try looking at the kernel log as it says

dmesg |grep -i nvidia
  1. Try starting x and look at the error codes.
startx

How did you manage that? Is it a patched version? Normally, G03 is not available in Leap 15.2.

ILL updater installs nouveau drivers, but OS cannot use it because of settings for Nvidia drivers is not wiped off, and nouveau driver is being blacklisted…
mrmazda will say that modesetting driver is all that you need…
Try to load OS with kernel parameter “nomodeset”.
Nvidia GT240 is not supported by a Leap 15.2+. It is better to change video card.

I’ve never encountered that before and the install was right in the middle of downloading, and since I opted for “update in heaps”, instead of “download all first”, I thought I might mess things up if I didn’t continue. (Quickly looking up the package said it had to do with ffmpeg and I knew I would add packman later, which typically has more up-to-date packages with ffmpeg, so I wasn’t concerned.) I wasn’t watching the update the whole time, as there were something like 3400 packages, so didn’t know if some packages had been installed or not. 15.0 to 15.1 went super smooth so I guess I was lulled into thinking 15.2 wasn’t going to be an issue with graphics cards.

I know I didn’t active secure-boot, so unless it’s something new by default, it’s not on.

I asked, because Leap 15.2 is checking driver signatures. Earlier Leap versions didn’t do that.

From earlier comments in this thread, it looks as if you have an older driver installed, which is not compatible with this kernel. I’ll leave it to people more experienced with Nvidia drivers to try to help you.

I guess this is pretty glaring that I don’t have 15.2 drivers…

% rpm -qa | grep nvidia

nvidia-glG03-340.108-lp151.26.1.x86_64
nvidia-gfxG03-kmp-default-340.108_k4.12.14_lp151.27-lp151.26.1.x86_64
x11-video-nvidiaG03-340.108-lp151.26.1.x86_64
nvidia-uvm-gfxG03-kmp-default-340.108_k4.12.14_lp151.27.26.1.x86_64
nvidia-computeG03-340.108-lp151.26.1.x86_64

  1. Delete, as in uninstall the preempt kernel packages? Would that also properly trigger a grub.cfg rebuild?
  2. Sorry I can’t copy/paste verbatim, as I’m typing this on another computer and the above was already difficult to check to accuracy…

input: HDA NVidia HDMI/DP,pcm=3 as /devices/pci0000:00:06.0/0000:0a:00.1/sound/card1/input24
[four lines similar with different pcm and input numbers]
audit: type=1400 audit(1619133343.982:4): apparmor=“STATUS” operation=“profile_load” profile=“unconfined” name=“nvidia_modprobe” pid=936 comm=“apparmor_parser”
[another line similar, but name=“nvidia_modprobe//kmod”]

  1. startx errors…

modprobe: ERROR: could not find module by name=‘nvidia’
modprobe: ERROR: could not insert ‘nvidia’: Unknown symbol in module, or unknown parameter (see dmesg)
[two times the two above lines]
(EE) Fatal server error: (EE) no screens found(EE)
(EE) Please consult The X.Org Foundation support at http://wiki.x.org for help.
(EE) Please also check the log file at “/var/log/Xorg.0.log” for additional information.
(EE) VGA Arbitration: Cannot restore default device.
(EE) Server terminated with error (1). Closing log file.
xinit: giving up
xinit: unable to connect to X server: Cannot assign requested address
xinit: server error
xinit failed. /usr/bin/Xorg is not setuid, maybe that’s the reason?
If so either use a display manager (strongly recommended) or adjust /etc/permissions.local and run “chkstat --system --set” afterwards

So we can pretty much conclude that I don’t have the 15.2 drivers. I do have the Nvidia repo enabled, but I guess the pre-built drivers are not being provided by Nvidia anymore? Would it be possible for me to install the Nvidia driver the “hard way”?

I did a network update? Which doesn’t clean up? (from what I’ve read)

Since you mentioned patched version, does that mean I can install the Nvidia driver the “hard way”?

Hmm… would it be possible for me to use the nouveau drivers temporarily? If it’s a quick switch over?

“nomodeset” will use modesetting driver? (I’ll research loading the kernel with nomodeset. Hoping it’s something simple to add to grub.cfg temporarily.)

Can I install Nvidia the “hard way”? This would be acceptable for now, til I put in another graphics card. My Nvidia is from 2009. I have a newer 2013 AMD card a friend gave me, but haven’t installed, since I needed to stay stable over the past year for work-at-home. Project is done, so I have upgrade time. I could try to just plug it in, but would rather not open a new can of worms right now.

Thank you for your time and response. I made the mistake of starting the update late at night, thinking it would go smoothly while I binged on The Mandalorian. I stressed over it not going to graphics mode and stayed up way late to debug. I wanted to write a somewhat informed post and hope that answers would percolate a bit while I slept for a few hours.

Leap 15.2 does not support the Nvidia-G03-driver per Repo!

I would do:
Unistall all Nvidia Repo related Nvidia drivers:

nvidia-glG03-340.108-lp151.26.1.x86_64
nvidia-gfxG03-kmp-default-340.108_k4.12.14_lp151.27-lp151.26.1.x86_64
x11-video-nvidiaG03-340.108-lp151.26.1.x86_64
nvidia-uvm-gfxG03-kmp-default-340.108_k4.12.14_lp151.27.26.1.x86_64
nvidia-computeG03-340.108-lp151.26.1.x86_64

As you can see, this drivers are build for Leap 15.1 (kernel 4.12) not for Leap 15.2 (kernel 5.3)

After this, searching for a nouveau blacklist file:

grep -i 'blacklist nouveau' /etc/modprobe.d/*

There should be no output, if you get something like:

grep -i 'blacklist nouveau' /etc/modprobe.d/*
/etc/modprobe.d/nvidia-installer-disable-nouveau.conf:blacklist nouveau

this means, there is a blacklist file /etc/modprobe.d/nvidia-installer-disable-nouveau.
You have to delete it by hand.

Also searching for nomodeset:

cat /proc/cmdline

If there is such entry, you can delete the entry in Yast----System----Bootloader

Please:
If you post something here, please use Code-Tags:
https://forums.opensuse.org/showthread.php/536143-Using-Code-Tags-Around-Your-Paste

Makes life easier.

Progress… or lack of…

I uninstalled the pre-built version of the Nvidia drivers so I could install 340.108 the “hard way”. 340.108 is the last version that supports the GT240. (Nvidia’s installer recognized the card and said 340.x was the last release that supports it.) NVidia’s installer also created files to disable nouveau.

After going through the install, still no graphics.

I decided to take the advice of installing a newer graphics card, an AMD/ATI Radeon R9 290. This turned out to be a little tricky for my system, as the power supply I have only has two PCI-e power connectors, a 6 pin and an 8 pin. The 6 pin was already connected to the motherboard, which happened to be for a graphics card. The 290 needs both a 6 pin and 8 pin to power it. I only need to power one graphics card, so the 6 pin was disconnected from the motherboard and connected to the 290, along with the 8 pin.

% lspci | grep VGA

0a:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Hawaii PRO [Radeon R9 290/390]
% lsmod | grep radeon

radeon 1630208 1
ttm 122880 2 amdgpu,radeon
drm_kms_helpler 229376 2 amdgpu,radeon
drm 544768 6 gpu_sched,drm_kms_helper,amdgpu,radeon,ttm
i2c_algo_bit 16384 2 amdgpu,radeon

I’m back to the preempt kernel in grub2.

Booting still doesn’t go to graphics.

I tried moving /etc/X11/xorg.conf to xorg.conf.bc since it still had nvidia as a Device. This was recommended on a page I found. No luck.

I tried Xorg -configure to generate a new file, but the new /root/xorg.conf.new contained no references to radeon in the Device section.

% startx

xauth: file/root/.serverauth.3428 does not exist

(==) Using config directory: "/etc/X11/xorg.conf.d"
(==) Using system config directory "/usr/share/X11/xorg.conf.d"
tion: Cannot restore default device.(EE) Server terminated with error (1). Closing log file.on support at http://wiki.x.org for help. (EE) Please also check the log file at "/var/log/Xorg.0.og" for additional information.(EE) VGA Arbitra
xinit: giving up
xinit: unable to connect to X server: Cannot assign requested address
xinit: server error
------
xinit failed. /usr/bin/Xorg is not setuid, maybe that's the reason?
If so either use a display manager (strongly recommended) or adjust /etc/permissions.local and run "chkstat ---system --set" afterward

It’s making me wonder if the “hard way” Nvidia driver would have worked and there’s something else wrong, as the Radeon should have “just” worked?

Any things to try?

Thanks.

Once more :
The 340 driver is only supported by Leap 15.2 if you patch it before:
https://forums.opensuse.org/showthread.php/550672-After-upgrade-to-15-2-from-15-1-Nvidia-driver-not-working

But it does not work on Leap 15.3 anymore, so maybe its better to use the nouveau driver.

Also:
please use Code-Tags:
https://forums.opensuse.org/showthread.php/536143-Using-Code-Tags-Around-Your-Paste

Thank you Sauerland for continuing to help me!

So, from what you’ve said, if I want to continue with the GT240 into the future, my best bet is with the nouveau driver, as even if I patch 340.x today, it’s a short-term solution that may not work into 15.3?


I’ve finally had success!

I had put this in /etc/X11/xorg.conf.d/90-my_nvidia_hacks.conf:

Section "Device"
    Identifier "Device0"
    Driver "nvidia"
    VendorName "NVIDIA Corporation"
    BoardName "GeForce GT 240"
    Option "UseHotplugEvents" "false"
EndSection

to prevent my dual monitor configuration from switching to one screen when I switch the second monitor to another computer. (This is annoying to me as the desktop squishes and all the contents spread over two screens is put on one screen. I prefer the wide desktop to be there when I switch back from the other computer.)

I removed the file and I have graphics mode! All good… except switching the second monitor to the other computer is back to paying attention of hotplug events. How do I tell the system to not use hotplug events with the radeon, like with nvidia?

Thanks!

I found my old thread on switching off UseHotplugEvents…

Settings->Configure Desktop->Startup and Shutdown->Background Services->Startup Services->KScreen 2 toggle to OFF

It affects all graphics cards, not just targeting a specific card, like what I was doing before.

I had one final thing that wasn’t working… GL for 3D, and it turns out, Zoom and KDE apps, like apps in the System Settings, crashed without GL working.

The solution was force installing xorg-x11-server again and accepting the dependency redirects to new sources.

FWIW, these are the NVidia cards I have in current use for Leap and Tumbleweed, all running competently on the FOSS default DIX driver, modesetting:

  1. NVIDIA C61 [GeForce 6150SE nForce 430]
  2. NVIDIA G84 [GeForce 8600 GT]
  3. NVIDIA G98 [GeForce 8400 GS Rev. 2]
  4. NVIDIA GF108 [GeForce GT 630]
  5. NVIDIA GF119 [NVS 310]
  6. NVIDIA GT218 [GeForce 210]

Only the C61 is never used with dual displays. Usually the GT218 isn’t either.

A list of AMD and Intel APUs/GPUs/IGPs I have running for Leap and Tumbleweed on the modesetting DIX would be considerably longer. The modesetting is newer technology than the DDXes, enabling most physical devices however branded to utilize just the one driver for X.

Both the nouveau DDX and the modesetting DIX require use of the nouveau kernel driver for KMS. KMS is disabled when nomodeset or nouveau.modeset=0 appear on the kernel command line.

NVidia’s drivers cause the single biggest exception to the absence of need for /etc/X11/xorg.conf and /etc/X11/xorg.conf.d/*conf files directed to X graphics. When removing an NVidia proprietary driver, these files virtually always must be removed to enable competent FOSS X driver operation.

For reliable, trouble-free online distribution upgrading, removing NVidia’s proprietary drivers first is a must.

Only once in my life have I installed an NVidia proprietary driver. It was much too long ago to remember much more than it wasn’t on a PC I owned.

Would there be any issue with using FOSS X drivers when an application requests that proprietary drivers be installed? As that’s what the software package has been tested against? The software package I have in mind is Side Effect’s Houdini. Would FOSS X support all the 3D demands?

Such a request could be a tradition based on a history of inadequate support from the reverse-engineered Nouveau DDX. The Modesetting DIX is newer technology, one X driver supporting any GPU supported by any manufacturer-specific kernel driver that provides KMS.

The software package I have in mind is Side Effect’s Houdini. Would FOSS X support all the 3D demands?
I have no basis on which to suggest a definitive answer. I can only surmise that if that software works with FOSS drivers on AMD and/or Intel GPUs, then FOSS drivers for NVidia GPUs should be good enough as well. There are no proprietary drivers for Intel’s IGPs. Intel is a major contributor to the Modesetting DIX. Likewise, AMD itself is a contributor ensuring FOSS AMD drivers are fully competent for the majority of use cases.

Assuming NVidia’s drivers have not already been installed, I can’t imagine any significant pain from trying FOSS if it turns out it isn’t good enough for your software choice. If it doesn’t, simply follow the instructions for installing NVidia’s own proprietaryware. OTOH, trouble removing NVidia’s drivers is a common topic on forums and mailing lists. If they are already installed and working satisfactorily, maintain the status quo…