Problem lightdm.service - system stale at boot

I have been using Qubes for quite some time on my laptop, and upgraded to 4.2.x some time - so my hardware used to work together with Qubes 4.2.x

At some point after the laptop run out of battery, I could not boot the system anymore. It tried to start “lightdm.service”, but then froze completely.

Since then, I tried to re-install Qubes OS 4.2.1, but have not managed to do so:

  • In 90% of tries, the system freezes
  • In 5% of cases, I was able to install Qubes up to the point, when the system restarts. But after re-start, the system froze again.
  • In 5% of cases, I was able to fully install Qubes, but after the first re-boot I was back at the problem that lightdm.service would not start.

I am not abel to explain this random behaviour, but I also do not know how to debug as the system freezes and I cannot access log files.

The problem seems to be related to:

This is another problem, but it may be related:

Potentially even this one:

I do have an NVIDIA Graphics card and my guess is that this seems to mess the system up.

Unfortunately I do not understand the solutions proposed in the posts above. Seems that “hide the GPU” seems to be promising, but I do not know how to use this (1) during installation process or (2) with the new installed system in dom0

Any remark on how to debug this welcome!

Hardware:
Dell Laptop
Intel core i7-11800H
NVIDIA GeForce RTX 3050 Ti

Try to add cpufreq=xen:hwp=off to Xen cmdline:

You can add Xen cmdline in GRUB like this:

But add cpufreq=xen:hwp=off to the end of the line starting with multiboot2.

Thank you for taking the time.
I did my best to try this out, yet given the fact that I am not an expert in bootloaders let me explain in detail what I did:

  • I copied the image of Qubes OS on (several) usb data sticks
  • I booted with these data sticks
  • When the first screen shows up with the options “install”, “test & install”, “rescue” etc. I pressed “e”
  • A screen came up with 4 lines, the second started with “multiboot2 …”; I added the above test after the last character of this line [“cpufreq=xen:hwp=off”]
  • Then I pressed F10 for reboot
  • The system started up, did some tests, yet at the end it froze again.

The only meaningful warning that I could see on the screen was:
“dracut-initqueue: Unknown device “/dev/run/install/repo/images/install.img”: No such device”

In case I got this completely wrong please advise. I have to admit that I did not fully understand the two articles you posted above - it looks like these were on Qubes systems that worked in general, while I do not have a working system anymore and I work with the USB data stick with the image for installation.

Your steps looks OK.

Just to make sure, did you have the space " " between the end of the original multiboot2 line and cpufreq=xen:hwp=off that you’ve added?

This line doesn’t give me any clues. Can you make a photo of the frozen screen with the logs that you see?

Thanks for helping on this!

question 1: Yes, I had the original line, then exactly one space, then the string “cpufreq=xen:hwp=off”, and I tried this twice: 1x with a trailing space at the end, the second time without a trailing space. I pressed F10 to reboot.

question 2: The frozen screen appears after a clear screen, that is the screen is entirely blank, and on the top left corner you see the cursor stale (that is: not blinking).

Add these options in GRUB menu so you’ll see the logs before the freeze:

Thank you for the idea!

I tried as you said:
1.) I run the Qubes OS installer with the “additional” boot options.
It worked and I could install Qubes OS - but I think it has nothing to do with these parameters, it was the case before that it sometimes worked and sometimes it did not.
2.) With a brand new Qubes OS 4.2.1 installed, I could boot once without any problem. But when I shut it down, I had the problem as always: The boot process halted at “lightdm.service”
3) I then tried to reboot with the additional parameters as suggested above.
The boot process was a lot longer, way more information, but it does not make any sense to me. I tried to take a picture of the very last screen when the system halted (see attached).

Does this make any sense?

After more research I still think that the NVIDIA GPU may be a problem.

Any ideas?

Do you have external display connected to your laptop during boot?
Try to add nomodeset kernel command line option in GRUB menu.

So this is what I did:

I tried to re-installed Qubes OS 4.2.1 without a monitor attached. This did NOT work, screen got stale again - as before.

So I tried a second time, adding the kernel parameter “nomodeset” as suggested. With this, installation was without a problem. I could then boot into the freshly installed Qubes OS, and I restarted it 4 times without a problem.

But now I cannot use external monitor with my laptop.

Any chance to get both going - have the system work as expected WITH an external monitor?

PS: After reading linux/Documentation/admin-guide/kernel-parameters.txt at master · torvalds/linux · GitHub I think this parameter simply prevented drivers to be loaded, which probably prevents the external screen from being recognized. Is this right?

Further ideas welcome!

Edit: I just noticed that on top, USB mouse and keyboard also do not work.

How are you connecting your external monitor to the laptop? Do you have HDMI port in your laptop? Or are you using Thunderbolt-HDMI adapter? Or something else?
Maybe it’s an issue with NVIDIA driver and you need to try using latest kernel if you want to use nouveau driver. Or install proprietary NVIDIA driver in dom0.
Or you can try to disable dGPU if you don’t plan to use it for GPU passthrough:
Hybrid graphics - ArchWiki
If you’re going to power down dGPU using udev rules then rebuild initramfs after blacklisting nouveau using this command in dom0:

sudo dracut -f

You can try to disable modesetting just for NVIDIA card by adding nouveau.modeset=0 instead of nomodeset.
Maybe external display will work with iGPU.

Do you have sys-usb?
Did you allow USB keyboard and mouse in Qubes Global Config → USB Devices tab?

Thanks so much for all these ideas.

1. Connection
Neither USB-C nor HDMI work. I think I found the reason: I have Thunderbolt-connections at my laptop, and the GRUB option nomodeset disables these ports in total (this is why the keyboard and mouse did not work anymore).

2. Install latest kernel
Is this the documentation of what you suggest:

Or are you suggesting compiling it myself?
Maybe you can guide, I really do not know where to start.

3. NVIDIA driver in dom0:
There are quite some web sites with instructions, yet they seem outdated:
(1) https://groups.google.com/g/qubes-users/c/k3gtee7rCUY
(2) Nvidia proprietary driver installation

Unless you have a better idea - I would try to run option (2).
Was this your suggestion?

4. Disable via nouveau.modeset=0
When I tried this, the screen was black and there was nothing I could do other than re-install Qubes. I think this may not work or may require additional work (which I am not aware of).

You can try to install the latest dom0 kernel from testing repository using this command:

sudo qubes-dom0-update --enablerepo=qubes-dom0-current-testing --action=upgrade kernel-latest

I never tried installing proprietary NVIDIA driver in dom0 so I can’t advise anything. But I’d give a (2) option a try.