Qube Manager crashes when attempting to view settings for a qube containing PCI devices that no longer exist
Qubes OS release
R4.3
Brief summary
Yesterday, I ended up moving my testing Qubes OS installation from a fairly recent Intel-based system (13th gen CPU) to a somewhat older one (11th gen CPU). The USB controller in this system is different than the one in the previous system, and so sys-usb would not start since it couldn't pass through a non-existent PCI device. To resolve this, I assumed I'd be able to open Qube Manager, select sys-usb, click Settings, then go to the Devices tab and remove the non-existent device. Unfortunately, upon clicking the "Settings" button, Qube Manager crashed.
Steps to reproduce
- Install Qubes OS R4.3 on a machine with a particular generation of Intel CPU (I assume AMD CPUs will show the same problems).
- Boot the installed system once, verify sys-usb and sys-net start, then shut the system down properly.
- Move the drive from the system where you installed it to some other system with a different generation of Intel CPU.
- Boot the installed system. sys-usb should not start.
- Attempt to start sys-usb. You should see an error about a PCI device not being available.
- In dom0, open xfce4-terminal, and run
qubes-qube-manager. - Click on sys-usb.
- Click the Settings button.
Expected behavior
VM settings window appears.
Actual behavior
Qube Manager crashes, and a Python exception is printed in the terminal.
Additional information
I was able to recover from this state by running sudo qvm-pci unassign sys-usb. After this, the settings window would open normally for sys-usb.
Do you maybe have the Python exception saved anywhere?
I unfortunately do not, but I can re-create the issue and share those.
I think I managed to reproduce this!! Fix incoming, hopefully.