Graphical Installer Does Not Appear - Pane is dead

I’ve been struggling for a few weeks now trying to boot to the r4.1.2 Qubes installer. I get the error: “Not asking for VNC because we don’t have a network” / “X startup failed, aborting installation” / “Pane is dead”

This seems like a common error but none of the common possible solutions have resolved the issue for me. Almost everything I try leads me to “Not asking for VNC because we don’t have a network” > black screen with frozen cursor. I only ever see the “X startup failed, aborting installation” / “Pane is dead” error when I do basic graphics mode which leads me to believe this is a graphics issue.

PC Specs (Custom build with all parts being manufactured in 2020)
Motherboard: ASUS X570-PLUS (HCL Verified)
CPU: AMD Ryzen 7 5800X (No iGPU)
RAM: 32GB Corsair
GPU: AMD Radeon RX 6700 XT OC Edition

Bios Settings
Secure Boot: Disabled
Fast Boot: Disabled
SVM: Enabled
IOMMU: Enabled

Things I’ve Tried

  • Booting using every option in the GRUB menu in both Legacy BIOS and UEFI mode (regular, test media, basic graphics mode, newest kernel)
  • Using different kernel parameters (radeon.modeset=0, amdgpu.dc=0, amdgpu.si_support=0, amdgpu.cik_support=0, radeon.si_support=0, radeon.cik_support=0)
  • Using a brand new corsair 32GB and 128GB USB stick. (Qubes installation works with no problem on two other laptops I have tested on)
    image
    image
  • I can install Arch Linux with a desktop environment and Windows with no problem on this PC
  • I tried the text based installer (inst.text kernel parameter in basic graphics mode) which is the furthest I’ve been able to get. However, step 3 in the text based installer asks for the ISO/Installation medium location which does not make any sense to me. The only options are the partitions on my main SSD in my PC and not the USB that I booted from.

I’m not sure how to troubleshoot from here. I suppose the next thing I could try is downloading/flashing the ISO on another USB stick and selecting that as an installation medium in the text based installer but this just seems wrong. Plus if the installer won’t appear then I can’t imagine the main OS would either? I don’t know. I’m struggling here.

I just want to understand and pinpoint my current issue. If anyone could give me the next steps for troubleshooting I would greatly appreciate it.

Which release of Qubes did you try?

If it was r4.1.2, did you try the “kernel latest” (the last boot option)?

If it wasn’t r4.1.2, would you be willing to try “kernel latest” from r4.1.2?

If you tried r.4.1.2, could you try replacing quiet with:

module_blacklist=amdgpu

?

Yes I am on r4.1.2. I’ve tried using the kernel latest and all the other boot entries but havent had any luck.

I tried “module_blacklist=amdgpu” and this option does not bring up the black screen with the frozen cursor in the top left of the screen like most options but it still gives me the same “Pane is dead” error.

I’m not sure about this - but is the installer running a “tmux” - so you can use ctrl+b n (hold control, press and release ‘b’, release control, press ‘n’) to cycle the terminals? … one of them might be a shell, where you can access logs for what went wrong. Alternative: Use ctrl+alt+F2 (?) to get a shell?

Edit: I just tested with a r4.1.2-rc USB-stick: It is be a “tmux”, so ctrl+b n should cycle the terminals and give access to logs about why the “Pane died”.

I’m now confident my problem is a graphics issue.

I was able to get the display to render when setting the kernel parameter “nomodeset”. I can now install and use Qubes using the basic vga graphics driver.

I am still not satisfied because the graphics are still very limited. My second monitor is not being detected and the monitor that is working is limited to 77hz but it’s a 240hz monitor.

It seems like anytime I try to use the amdgpu driver (amdgpu.si_support=1 amdgpu.cik_support=1 (also tried with amdgpu.dc=1)) or radeon driver (radeon.si_support=1 radeon.cik_support=1) the display manager cannot render. I’m assuming auto kms is setting the amdgpu driver automatically which is why setting the nomodeset kernel parameter fixes my issue. I’ve also tried xdriver=amdgpu xdriver=radeon xdriver=mesa xdriver=vesa but I still get the same issue: everything freezes when the Light Display Manager starts. Because of this, I’m unable to get any logs. Switching to a shell using Ctrl + Alt + F2 does not work when this occurs. The whole display is frozen.

When I was finally able to install and use Qubes with the basic vga driver, I used kernel-latest (6.1). In dom0 I run “qubes-dom0-update kernel kernel-latest amdgpu radeon” to update these packages to the latest version. Still the same issue. The display manager just won’t render if any driver is loaded except the basic vga driver loaded with “nomodeset”. I can confirm amdgpu and radeon drivers are not being set because they are not listed when I run lsmod in dom0.

When I install and use Arch Linux (kernel 6.2) on this PC it works perfectly. No configuration was needed. lsmod will show the amdgpu driver loaded and I have no display limitations.

So I’m thinking the reason amdgpu isn’t working is because of xen or something else specifically related to qubes. At the moment, I’m not sure how to confirm this or troubleshoot my issue further.

1 Like

This is a common installation issue.

Have you taken a look at this?

I have taken a look at all the documentation related to my issue. I have been trying to resolve this issue for weeks now and I am still actively working on it. I have isolated the problem being related to my gpu. I do not have an iGPU. My discrete GPU is AMD Radeon RX 6700 XT OC Edition.

To reiterate, my entire display freezes shortly after I put in my luks passphrase unless I set one of the kernel parameters:

nomodeset
rd.qubes.hide_pci=0b:00.0,0b:00.1
modprobe.blacklist=amdgpu

They all seem to be workarounds and do not fix the actual issue. I’m assuming amdgpu being loaded causes this issue but I’m unsure why. It gets stuck on:

[OK] Started Command Scheduler.
     Starting Light Display Manger...
     Starting Hold until boot process finishes up...

Similar issue reported by other users:

Below is the output from various commands with different kernel params:

With nomodeset (no changes to default kernel params):

[admin@dom0 ~]$ cat /proc/cmdline 
placeholder root=/dev/mapper/qubes_dom0-root ro rd.luks.uuid=luks-520bbcf7-59d7-4f18-8843-b61ffe9d9ee1 rd.lvm.lv=qubes_dom0/root rd.lvm.lv=qubes_dom0/swap plymouth.ignore-serial-consoles nomodeset rd.driver.pre=btrfs rhgb quiet usbcore.authorized_default=0
[admin@dom0 ~]$ sudo lspci -k
[...]
0b:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Navi 22 [Radeon RX 6700/6700 XT / 6800M] (rev c1)
	Subsystem: ASUSTeK Computer Inc. Device 05c7
	Kernel modules: amdgpu
0b:00.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] Navi 21 HDMI Audio [Radeon RX 6800/6800 XT / 6900 XT]
	Subsystem: Advanced Micro Devices, Inc. [AMD/ATI] Navi 21 HDMI Audio [Radeon RX 6800/6800 XT / 6900 XT]
	Kernel driver in use: snd_hda_intel
	Kernel modules: snd_hda_intel
[...]
[admin@dom0 ~]$ sudo modprobe amdgpu
modprobe: ERROR: could not insert 'amdgpu': Invalid argument

With the kernel parameter rd.qubes.hide_pci=0b:00.0,0b:00.1 and without nomodeset:

[admin@dom0 ~]$ cat /proc/cmdline 
placeholder root=/dev/mapper/qubes_dom0-root ro rd.luks.uuid=luks-520bbcf7-59d7-4f18-8843-b61ffe9d9ee1 rd.lvm.lv=qubes_dom0/root rd.lvm.lv=qubes_dom0/swap plymouth.ignore-serial-consoles rd.qubes.hide_pci=0b:00.0,0b:00.1 rd.driver.pre=btrfs rhgb quiet usbcore.authorized_default=0
[admin@dom0 ~]$ sudo lspci -k
[...]
0b:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Navi 22 [Radeon RX 6700/6700 XT / 6800M] (rev c1)
	Subsystem: ASUSTeK Computer Inc. Device 05c7
	Kernel driver in use: pciback
	Kernel modules: amdgpu
0b:00.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] Navi 21 HDMI Audio [Radeon RX 6800/6800 XT / 6900 XT]
	Subsystem: Advanced Micro Devices, Inc. [AMD/ATI] Navi 21 HDMI Audio [Radeon RX 6800/6800 XT / 6900 XT]
	Kernel driver in use: pciback
	Kernel modules: snd_hda_intel
[...]
admin@dom0 ~]$ sudo modprobe amdgpu

has no output

With the kernel parameter modprobe.blacklist=amdgpu and without nomodeset:

[admin@dom0 ~]$ cat /proc/cmdline 
placeholder root=/dev/mapper/qubes_dom0-root ro rd.luks.uuid=luks-520bbcf7-59d7-4f18-8843-b61ffe9d9ee1 rd.lvm.lv=qubes_dom0/root rd.lvm.lv=qubes_dom0/swap plymouth.ignore-serial-consoles modprobe.blacklist=amdgpu rd.driver.pre=btrfs rhgb quiet usbcore.authorized_default=0
[admin@dom0 ~]$ sudo lspci -k
[...]
0b:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Navi 22 [Radeon RX 6700/6700 XT / 6800M] (rev c1)
	Subsystem: ASUSTeK Computer Inc. Device 05c7
	Kernel modules: amdgpu
0b:00.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] Navi 21 HDMI Audio [Radeon RX 6800/6800 XT / 6900 XT]
	Subsystem: Advanced Micro Devices, Inc. [AMD/ATI] Navi 21 HDMI Audio [Radeon RX 6800/6800 XT / 6900 XT]
	Kernel driver in use: snd_hda_intel
	Kernel modules: snd_hda_intel
[...]
admin@dom0 ~]$ sudo modprobe amdgpu

the display then goes blank and freezes. I can’t do ctrl + fn + f2.

Here are my Xorg drivers (I have no idea what these do or if they’re related. I did have to run sudo qubes-dom0-update xorg-x11-drv-amdgpu for amdgpu_drv.so to appear. After that, I rebooted, removed nomodeset, and still no change. Still frozen display.):

[admin@dom0 ~]$ ls /usr/lib64/xorg/modules/drivers
amdgpu_drv.so  ati_drv.so  dummy_drv.so  fbdev_drv.so  intel_drv.so  modesetting_drv.so  nouveau_drv.so  openchrome_drv.so  qxl_drv.so  radeon_drv.so  v4l_drv.so  vesa_drv.so  vmware_drv.so

After hitting pretty much the exact same problem, I figured I would give the weekly 4.2 and subsequently 4.2 release candidate a go.

To my surprise, everything worked out of the box (no need for nomodeset, blacklisting amdgpu, etc.) to install 4.2. All three monitors were active and running. This was both with lts (shipped) kernel and current. Makes sense as lts is 6.1.x

The installation process is two parts: installing the baseOS then configuring the VMs with a reboot in the middle. After the reboot, I was able to land with all monitors still working and the amdgpu driver running. The output below was from dom0 in my installed instance.

lspci -k | grep -A 3 -E "(VGA|3D)"

Returned:

Kernel driver in use: amdgpu
Kernel modules: amdgpu

Even running: sudo modprobe amdgpu returned without an exception.

I was super excited, as this was exactly what I thought was required. (An updated fedora for dom0 to include the updated xorg-x11-drv-amdgpu)

Everything appeared to be working, network, all my monitors, etc., but on reboot, I’m back to the same problem. Removing quiet as a kernel parameter, it gets to the luks decryption screen, which then freezes. My other monitor displays the last command was amdgpu loading. But it’s the same wall as above and no way to extract anything as the dmesg messages are cleared and only see the top ~10 lines. Installed xorg-x11-drv-amdgpu no clue if it’s needed, but was desperate.

While I feel I’m closer, I’m still stuck (at least I can use integrated graphics, unlike OP, but using two versus three monitors is still almost a deal breaker. - Haven’t had luck on second hand rx580s either.

Hopefully you or someone with a little bit more knowledge can figure out what’s missing between the two. Seems very strange that I can boot and configure all my VMs and use the system with the amdgpu driver running, but any subsequent boot is met with a locked luks screen.

Messing around a little more and re-reading above, I’m very hopeful for 4.2 when it makes it to stable.

I’m not too familiar with kernel parameter ordering and execution, but that seems to be my issue. A hacky workaround while I do more research into kernel parameter boot ordering confirmed, I’m successfully able to use my installed instance with amdgpu driver active.

  • Add modprobe.blacklist=amdgpuas a kernel parameter.
  • Let the system boot up (no more dmesg logs are output)
  • alt + F2
  • login
  • sudo modprobe amdgpu

Display Manager launches and I’m dumped in dom0 with the driver’s loaded.

1 Like