leap 15.0 freezes on boot after upgrade

Hello everyone, newbie here.
I have been using Leap happily for several months, and recently after an upgrade, my computer hangs on boot.
I tried to repair it using the installation usb, but couldn’t figure out how.
I did discover that the computer hangs on boot, except when I have the installation USB plugged in.
And if I plug in the USB after the hang happens, the boot process gets unstuck and continues properly.
Can you help please?
Thanks.

This looks like you upgraded from 42.3 to 15 .0, Is that correct?
From a USB device with a downloaded image on it?

If so, boot as you described, unplug the USB device, use YaST > System > Bootloader. It will redetect the optimal settings, just confirm, reboot and you should be back on track,

OK thanks. No, that’s not what I did. I installed Leap 15 a few months ago and have been using it as my daily driver. Everything was working great until I wanted to upgrade Firefox to the latest full release (not the ESR one.) So I added the Mozilla official repo and did a zypper dup --allow-vendor-change to load the latest firefox release from that repository.

That’s when the boot problems started. I have been trying to troubleshoot myself, and tried booting from my Leap 15.0 USB with the installation media. That booted fine of the USB, but I couldn’t find anything in there that would help me.

Then, in one of my attempts, I booted from my HDD when it hung, I plugged in my USB stick with the leap 15.0 install media, and that unstuck (systemd?) to go to the next step in the boot process!

So, now, i tried what you proposed. I booted from my HDD using the " USB trick" i mention above, and looked in the YAST bootloader section, but had the same problem when i rebooted: It hangs at boot every time at approx 10 secs:
displays this line > USBcore: registered new interface driver uvcvideo
then hangs here >USB Video Class Driver 1.1.1
and drops to the emergency shell after timeout.

However, if I reboot from HDD with the USB plugged in, (not booting from the USB, mind you, just with it plugged in during my normal HDD boot sequence), it boots normally into gnome.

These are my specs:
OS: openSUSE 15.0
Kernel: x86_64 Linux 4.12.14-lp150.12.58-default
Uptime: 18m
Packages: 5504
Shell: bash 4.4.23
Resolution: 1920x1080
DE: GNOME 3.26.1
WM: GNOME Shell
WM Theme: Adwaita
GTK Theme: Adwaita [GTK2/3]
Icon Theme: DMZ-White
Font: Cantarell 11
CPU: Intel Core i5-4300U @ 4x 2.9GHz [25.0°C]
GPU: intel
RAM: 1530MiB / 7876MiB

Thanks again.

Sounds to me like another case of a starved random number generator waiting for entropy during boot.

What’s your output when you search boot messages for irregularities? Like so:

dmesg -dT | grep -i '\(ra\?nd\|havege\|warn\|^a-z]err\|fail\|conflict\|ignor\|n^a-n p-z]t\|te\?mp\)'

Here’s the result of my main rig from this morning:

rig:~ ▶ dmesg -dT | grep -i '\(ra\?nd\|havege\|warn\|^a-z]err\|fail\|conflict\|ignor\|n^a-n p-z]t\|te\?mp\)'
...]
**[Mon May 13 05:42:33 2019 <    0.021753>] random: systemd: uninitialized urandom read (16 bytes read)
[Mon May 13 05:42:33 2019 <    0.000025>] random: systemd: uninitialized urandom read (16 bytes read)
[Mon May 13 05:42:33 2019 <    0.000007>] random: systemd: uninitialized urandom read (16 bytes read)**
[Mon May 13 05:42:33 2019 <    0.000005>] xhci_hcd 0000:00:14.0: cache line size of 64 is not supported
[Mon May 13 05:42:33 2019 <    0.003912>] ehci-pci 0000:00:1a.0: cache line size of 64 is not supported
[Mon May 13 05:42:33 2019 <    0.003901>] ehci-pci 0000:00:1d.0: cache line size of 64 is not supported
[Mon May 13 05:42:33 2019 <    0.000678>] ata1.00: supports DRM functions and may not be fully accessible
[Mon May 13 05:42:33 2019 <    0.001686>] ata1.00: supports DRM functions and may not be fully accessible
[Mon May 13 05:42:33 2019 <    0.000007>] sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
[Mon May 13 05:42:33 2019 <    0.000006>] sd 1:0:0:0: [sdb] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
[Mon May 13 05:42:33 2019 <    0.000206>] PM: Image not found (code -22)
[Mon May 13 05:42:33 2019 <    0.000000>] PM: Hibernation image not present or could not be loaded.
**[Mon May 13 05:42:33 2019 <    0.021232>] random: fast init done**
[Mon May 13 05:42:34 2019 <    0.000000>] lpc_ich: Resource conflict(s) found affecting gpio_ich
**[Mon May 13 05:42:35 2019 <    0.002723>] random: crng init done
[Mon May 13 05:42:35 2019 <    0.000001>] random: 7 urandom warning(s) missed due to ratelimiting**

My system seems to be slightly entropy-starved during boot as well, but it still boots in 1.3 to 1.5 seconds (according to systemd-analyze). Still: during my last boot, something called the urandom() function 3 times before the random number generator was initialized (»random: crng init done«). I’m no kernel hacker, but I think this is problematic.

Come to think of it, every few months, I have to help boots along by moving my mouse or pressing keys (it seems the equivalent of, in your case, inserting a USB device). It’s usually after I carelessly uninstall libhavege/haveged in order to try booting Linux even quicker. Then I remember what haveged is for, reinstall it and all’s good.

Question: does pressing some keys or moving the mouse during boot help you avoid those hangs during boots? Then you might need »haveged« and/or additional entropy sources (like digital noise generators or a USB weather station etc).

Please post:

zypper lr -d

Alrighty… here are the results for zypper lr -d:



Repository priorities in effect: (See 'zypper lr -P' for details)
      90 (raised priority)  :  1 repository  
      99 (default priority) : 10 repositories

#  | Alias                            | Name                                        | Enabled | GPG Check | Refresh | Priority | Type   | URI                                                                                 | Service
---+----------------------------------+---------------------------------------------+---------+-----------+---------+----------+--------+-------------------------------------------------------------------------------------+--------
 1 | Atom                             | Atom Editor                                 | Yes     | (r ) Yes  | No      |   99     | rpm-md | https://packagecloud.io/AtomEditor/atom/el/7/x86_64                                 |        
 2 | http-opensuse-guide.org-d237b783 | libdvdcss repository                        | Yes     | (r ) Yes  | Yes     |   99     | rpm-md | http://opensuse-guide.org/repo/openSUSE_Leap_15.0/                                  |        
 3 | http-packman.inode.at-e9beedde   | Packman Repository                          | Yes     | (r ) Yes  | Yes     |   99     | rpm-md | http://packman.inode.at/suse/openSUSE_Leap_15.0/                                    |        
 4 | mozilla                          | Mozilla based projects (openSUSE_Leap_15.1) | Yes     | (r ) Yes  | No      |   99     | rpm-md | http://download.opensuse.org/repositories/mozilla/openSUSE_Leap_15.1/               |        
 5 | openSUSE-Leap-15.0-1             | openSUSE-Leap-15.0-1                        | No      | ----      | ----    |   99     | rpm-md | hd:///?device=/dev/disk/by-id/usb-General_USB_Flash_Disk_3710010000129706-0:0-part2 |        
 6 | packman                          | packman                                     | Yes     | (r ) Yes  | Yes     |   90     | rpm-md | http://ftp.gwdg.de/pub/linux/misc/packman/suse/openSUSE_Leap_15.1/                  |        
 7 | repo-debug                       | openSUSE-Leap-15.0-Debug                    | No      | ----      | ----    |   99     | NONE   | http://download.opensuse.org/debug/distribution/leap/15.0/repo/oss/                 |        
 8 | repo-debug-non-oss               | openSUSE-Leap-15.0-Debug-Non-Oss            | No      | ----      | ----    |   99     | NONE   | http://download.opensuse.org/debug/distribution/leap/15.0/repo/non-oss/             |        
 9 | repo-debug-update                | openSUSE-Leap-15.0-Update-Debug             | No      | ----      | ----    |   99     | NONE   | http://download.opensuse.org/debug/update/leap/15.0/oss/                            |        
10 | repo-debug-update-non-oss        | openSUSE-Leap-15.0-Update-Debug-Non-Oss     | No      | ----      | ----    |   99     | NONE   | http://download.opensuse.org/debug/update/leap/15.0/non-oss/                        |        
11 | repo-non-oss                     | openSUSE-Leap-15.0-Non-Oss                  | Yes     | (r ) Yes  | Yes     |   99     | rpm-md | http://download.opensuse.org/distribution/leap/15.0/repo/non-oss/                   |        
12 | repo-oss                         | openSUSE-Leap-15.0-Oss                      | Yes     | (r ) Yes  | Yes     |   99     | rpm-md | http://download.opensuse.org/distribution/leap/15.0/repo/oss/                       |        
13 | repo-source                      | openSUSE-Leap-15.0-Source                   | No      | ----      | ----    |   99     | NONE   | http://download.opensuse.org/source/distribution/leap/15.0/repo/oss/                |        
14 | repo-source-non-oss              | openSUSE-Leap-15.0-Source-Non-Oss           | No      | ----      | ----    |   99     | NONE   | http://download.opensuse.org/source/distribution/leap/15.0/repo/non-oss/            |        
15 | repo-update                      | openSUSE-Leap-15.0-Update                   | Yes     | (r ) Yes  | Yes     |   99     | rpm-md | http://download.opensuse.org/update/leap/15.0/oss/                                  |        
16 | repo-update-non-oss              | openSUSE-Leap-15.0-Update-Non-Oss           | Yes     | (r ) Yes  | Yes     |   99     | rpm-md | http://download.opensuse.org/update/leap/15.0/non-oss/                              |        
17 | sublime-text                     | Sublime Text - x86_64 - Stable              | Yes     | (r ) Yes  | Yes     |   99     | rpm-md | https://download.sublimetext.com/rpm/stable/x86_64                                  |        
18 | wavebox                          | Wavebox - x86_64                            | Yes     | (r ) Yes  | No      |   99     | rpm-md | https://wavebox.io/dl/client/repo/yum/                                              |        


Thanks

Pressing keys or moving mouse has no effect. Only plugging in USB jiggles the process free.

And here are the results of the dmesg query search for irregularities:



[Mon May 13 09:25:45 2019 <    0.000027>] devtmpfs: initialized
[Mon May 13 09:25:45 2019 <    0.000000>] ACPI FADT declares the system doesn't support PCIe ASPM, so disable it
[Mon May 13 09:25:45 2019 <    0.000000>] pmd_set_huge: Cannot  satisfy [mem 0xf8000000-0xf8200000] with a huge-page mapping due to MTRR  override.
[Mon May 13 09:25:45 2019 <    0.000000>] core: PMU erratum BJ122, BV98, HSD29 worked around, HT is on
[Mon May 13 09:25:45 2019 <    0.003147>] ACPI: [Firmware Bug]: BIOS _OSI(Linux) query ignored
[Mon May 13 09:25:45 2019 <    0.000890>] acpi PNP0A08:00: _OSC: platform does not support [PCIeHotplug PME]
[Mon May 13 09:25:45 2019 <    0.000004>] system 00:09: [mem 0xfed90000-0xfed93fff] could not be reserved
[Mon May 13 09:25:45 2019 <    0.000004>] system 00:09: [mem 0xfee00000-0xfeefffff] could not be reserved
[Mon May 13 09:25:46 2019 <    0.000103>] GHES: HEST is not enabled!
[Mon May 13 09:25:46 2019 <    0.001482>] i8042: Warning: Keylock active
[Mon May 13 09:25:46 2019 <    0.000932>] PM: Hibernation image not present or could not be loaded.
[Mon May 13 09:25:46 2019 <    0.005713>] systemd[1]: systemd 234  running in system mode. (+PAM -AUDIT +SELINUX -IMA +APPARMOR -SMACK  +SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT -GNUTLS +ACL +XZ +LZ4 +SECCOMP  +BLKID -ELFUTILS +KMOD -IDN2 -IDN default-hierarchy=hybrid)
[Mon May 13 09:25:47 2019 <    0.064178>] random: systemd: uninitialized urandom read (16 bytes read)
[Mon May 13 09:25:47 2019 <    0.066672>] random: systemd: uninitialized urandom read (16 bytes read)
[Mon May 13 09:25:47 2019 <    0.063219>] random: systemd: uninitialized urandom read (16 bytes read)
[Mon May 13 09:25:48 2019 <    0.198078>] random: crng init done
[Mon May 13 09:25:48 2019 <    0.000001>] random: 7 urandom warning(s) missed due to ratelimiting
[Mon May 13 09:25:49 2019 <    0.003897>] ehci-pci 0000:00:1d.0: cache line size of 64 is not supported
[Mon May 13 09:25:49 2019 <    0.000004>] xhci_hcd 0000:00:14.0: cache line size of 64 is not supported
[Mon May 13 09:25:50 2019 <    0.000706>] ata2.00: NCQ Send/Recv Log not supported
[Mon May 13 09:25:50 2019 <    0.000367>] ata2.00: NCQ Send/Recv Log not supported
[Mon May 13 09:25:50 2019 <    0.000013>] sd 1:0:0:0: [sda] Write  cache: enabled, read cache: enabled, doesn't support DPO or FUA
[Mon May 13 09:25:54 2019 <    0.007300>] ahci 0000:00:1f.2: port does not support device sleep
[Mon May 13 09:27:11 2019 <    0.087371>] FAT-fs (sdb1): utf8 is  not a recommended IO charset for FAT filesystems, filesystem will be  case sensitive!
[Mon May 13 09:27:11 2019 <    0.065555>] FAT-fs (sdb1): Volume  was not properly unmounted. Some data may be corrupt. Please run fsck.
[Mon May 13 09:27:11 2019 <    0.000005>] vboxpci: IOMMU not found (not registered)
[Mon May 13 09:27:12 2019 <    0.006729>] IPv6: ADDRCONF(NETDEV_UP): eth2: link is not ready
[Mon May 13 09:27:12 2019 <    0.212245>] IPv6: ADDRCONF(NETDEV_UP): eth2: link is not ready
[Mon May 13 09:27:12 2019 <    0.003399>] IPv6: ADDRCONF(NETDEV_UP): wlan1: link is not ready
[Mon May 13 09:27:12 2019 <    0.236175>] IPv6: ADDRCONF(NETDEV_UP): wlan1: link is not ready
[Mon May 13 09:27:12 2019 <    0.269296>] IPv6: ADDRCONF(NETDEV_UP): wlan1: link is not ready
[Mon May 13 09:27:13 2019 <    0.070122>] IPv6: ADDRCONF(NETDEV_UP): wlan1: link is not ready
[Mon May 13 09:32:57 2019 <  308.018162>] IPv6: ADDRCONF(NETDEV_UP): wlan1: link is not ready


Thanks for that cool command ! Helpful to see what is going on. I noticed a few messages related to random numbers in there, like you suggested…

Mix of Leap 15.1 and Leap 15.0 Repos…
And some extern Repos…

I see! So what was my mistake? Adding the mozilla repo?
Should I eliminate these? And also, how can I use the latest firefox build from an external repo without breaking things?
Also, how can I clean things up to be all Leap 15.1 :shame:?
Appreciate all the help, linux people!

This probably needs a bug report. It seems that there is a problem in the ordering of systemd units.

I’m not at all sure that this is the same problem as the OP. It could, instead, be a disk dependency on a partition on that USB device.

Probably not the mistake that caused the immediate problem. I have to think #6 (Packman for 15.1) is where your primary problem came from, but having Mozilla for 15.1 wouldn’t have been helpful either.

Should I eliminate these? And also, how can I use the latest firefox build from an external repo without breaking things?
You could edit #4 (mozilla) to read 15.0 instead of 15.1, either by directly editing its file in /etc/zypp/repos.d or with YaST, and have Firefox 66.0.5 available, same as 15.1 has. Same for Packman.

Also, how can I clean things up to be all Leap 15.1 :shame:?
I wouldn’t change anything to 15.1 until you are again able to boot normally.

After, with most optional repos disabled, and the other existent repos switched to 15.1 (Mozilla, Packman, OSS, Non-OSS, Update, Non-OSS-Update) you should be able to zypper dup and have 15.1 working. Once there you could add back the others one at a time, if you know their support for 15.1 is available. Some optional 15.0 repos will work in 15.1, but about yours other than Libdvdcss (opensuse-guide.org, one file is all that’s in it) I have no idea.

I would delete #5 (USB stick) unless you know you’ll ever need it again.

OK, thanks so much sir. I tried all of the above, but not luck. Sigh. I guess I’ll just reinstall :). Live and learn about mixing repos. Thanks to all for your support!