Qubes OS release
Qubes 4.2.4
Brief summary
When switching from an old fedora to a new one via SecureDrop's Workstation, qubes fail to start and the entire system needs to be restarted, for the issue to be resolved. The startup failure notification shows: Start failed: internal error: Unknown PCI header type '127' for device ... see /var/log/libvirt/libxl/libxl-driver.log for details.
Both sys-net and sys-usb are affected. But they seem to have different symptoms. Might be worth a separate report. This happens specifically when switching old Fedora templates to a more recent version through this salt state file. The file itself is a bit convoluted a definitely in need of a cleanup / simplification, but I have rendered it in a gist, so it's easier to understand what's going on.
This happens on various systems, quite reliably:
- ThinkPad T14 Gen1
- NovaCustom NV41 (on 2 separate devices)
Steps to reproduce
Note I haven't tried these exact reproduction steps yet, but the issue happens when running the particular sls file. It could be that there is some path dependence and it requires a full SecureDrop Workstation install, but I doubt it.
- Be on a clean Qubes 4.2.4 install
- Install SecureDrop Workstation packages (we only really this mostly self-contained sls file)
sudo qubes-dom0-update -y qubes-repo-contrib
sudo qubes-dom0-update -y --clean securedrop-workstation-keyring
sudo qubes-dom0-update -y --clean securedrop-workstation-dom0-config
sudo qubesctl --show-output state.sls securedrop_salt.sd-sys-vms
Expected behavior
Completes successfully.
Actual behavior
Soon after Fedora 43 is downloaded and updated, the the system hangs when trying to start various qubes.
sys-firewall:
Specifically:
Start failed: internal error: Unknown PCI header type '127' for device ... see /var/log/libvirt/libxl/libxl-driver.log for details
The /var/log/libvirt/libxl/libxl-driver.log log has several errors about failing to remove devices, as well as an error from libxl_exec.c that a process died with exit status zero.
sys-net
Specifically:
Start failed: internal error: libxenlight failed to create new domain 'sys-net', see /var/log/libvirt/libxl/libxl-driver.log for details
sys-usb
Specifically:
Cannot connect to qrexec agent for 60 seconds, see /var/log/xen/console/guest-sys-usb.log for details
The /var/log/xen/console/guest-sys-usb.log file simply contains this line (for the time period of running sdw --apply):
Additional information
Credit to @apyrgio for filing the issue originally in freedomofpress/securedrop-workstation#1668. This issue contains additional debug info. It had also happened to me a few times, but always at an inconvenient time, where a system restart to continue the work was necessary.
Possibly related issues:
Logs from Thinkpad T14 (Gen 1)
Dom0 kernel log: kern.log
Output on my system for the sys-net qube:
$ qvm-pci ls sys-net
BACKEND:DEVID DESCRIPTION USED BY
<id1> Network controller: Intel Corporation Comet Lake PCH-LP CNVi Wifi sys-net (no-strict-reset=True)
<id2> Ethernet controller: Intel Corporation Ethernet Connection (10) I219-V sys-net (no-strict-reset=True)
$ cat /sys/bus/pci/devices/<id1>/reset_method
flr
$ cat /sys/bus/pci/devices/<id1>/power/control
auto
$ cat /sys/bus/pci/devices/<id2>/reset_method
<does not exist>
$ cat /sys/bus/pci/devices/<id2>/power/control
on
sys-usb qube:
$ qvm-pci ls sys-usb
BACKEND:DEVID DESCRIPTION USED BY
<id1> USB controller: Intel Corporation Comet Lake PCH-LP USB 3.1 xHCI Host Controller sys-usb (no-strict-reset=True)
<id2> USB controller: Intel Corporation JHL6240-Thunderbolt 3 USB 3.1 Controller (Low Power [Alpine Ridge LP 2016] sys-usb (no-strict-reset=True)
$ cat /sys/bus/pci/devices/<id1>/reset_method
<does not exist>
$ cat /sys/bus/pci/devices/<id1>/power/control
auto
$ cat /sys/bus/pci/devices/<id2>/reset_method
pm bus
$ cat /sys/bus/pci/devices/<id2>/power/control
on
Originally posted by @apyrgio in #1668
Output on my system for the sys-net qube:
$ qvm-pci ls sys-net
BACKEND:DEVID DESCRIPTION USED BY
<id1> Network controller: Intel Corporation Comet Lake PCH-LP CNVi Wifi sys-net (no-strict-reset=True)
<id2> Ethernet controller: Intel Corporation Ethernet Connection (10) I219-V sys-net (no-strict-reset=True)
$ cat /sys/bus/pci/devices/<id1>/reset_method
flr
$ cat /sys/bus/pci/devices/<id1>/power/control
auto
$ cat /sys/bus/pci/devices/<id2>/reset_method
<does not exist>
$ cat /sys/bus/pci/devices/<id2>/power/control
on
sys-usb qube:
$ qvm-pci ls sys-usb
BACKEND:DEVID DESCRIPTION USED BY
<id1> USB controller: Intel Corporation Comet Lake PCH-LP USB 3.1 xHCI Host Controller sys-usb (no-strict-reset=True)
<id2> USB controller: Intel Corporation JHL6240-Thunderbolt 3 USB 3.1 Controller (Low Power [Alpine Ridge LP 2016] sys-usb (no-strict-reset=True)
$ cat /sys/bus/pci/devices/<id1>/reset_method
<does not exist>
$ cat /sys/bus/pci/devices/<id1>/power/control
auto
$ cat /sys/bus/pci/devices/<id2>/reset_method
pm bus
$ cat /sys/bus/pci/devices/<id2>/power/control
on
Originally posted by @apyrgio in #1668
Qubes OS release
Qubes 4.2.4
Brief summary
When switching from an old fedora to a new one via SecureDrop's Workstation, qubes fail to start and the entire system needs to be restarted, for the issue to be resolved. The startup failure notification shows:
Start failed: internal error: Unknown PCI header type '127' for device ... see /var/log/libvirt/libxl/libxl-driver.log for details.Both
sys-netandsys-usbare affected. But they seem to have different symptoms. Might be worth a separate report. This happens specifically when switching old Fedora templates to a more recent version through this salt state file. The file itself is a bit convoluted a definitely in need of a cleanup / simplification, but I have rendered it in a gist, so it's easier to understand what's going on.This happens on various systems, quite reliably:
Steps to reproduce
sudo qubes-dom0-update -y qubes-repo-contribsudo qubes-dom0-update -y --clean securedrop-workstation-keyringsudo qubes-dom0-update -y --clean securedrop-workstation-dom0-configsudo qubesctl --show-output state.sls securedrop_salt.sd-sys-vmsExpected behavior
Completes successfully.
Actual behavior
Soon after Fedora 43 is downloaded and updated, the the system hangs when trying to start various qubes.
sys-firewall:Specifically:
The
/var/log/libvirt/libxl/libxl-driver.loglog has several errors about failing to remove devices, as well as an error fromlibxl_exec.cthat a process died with exit status zero.sys-netSpecifically:
sys-usbSpecifically:
The
/var/log/xen/console/guest-sys-usb.logfile simply contains this line (for the time period of runningsdw --apply):Additional information
Credit to @apyrgio for filing the issue originally in freedomofpress/securedrop-workstation#1668. This issue contains additional debug info. It had also happened to me a few times, but always at an inconvenient time, where a system restart to continue the work was necessary.
Possibly related issues:
Logs from Thinkpad T14 (Gen 1)
Dom0 kernel log: kern.log
Originally posted by @apyrgio in #1668
Originally posted by @apyrgio in #1668