PCI domains other than 0000 or 4-digit break qubesd
#8143
Labels
affects-4.1
This issue affects Qubes OS 4.1.
affects-4.2
This issue affects Qubes OS 4.2.
C: core
diagnosed
Technical diagnosis has been performed (see issue comments).
hardware support
P: default
Priority: default. Default priority for new issues, to be replaced given sufficient information.
Milestone
Qubes OS release
Qubes-4.1.2
Brief summary
If a host machine has PCI devices in a PCI domain that is not "0000" or 4-digit (such as domain "10000"), it breaks
qubesd
.In turn this makes all qubes fail to start, the Devices tab in Settings of all qubes becomes disabled, and commands like
qvm-pci
fail.Steps to reproduce
Run Qubes on any hardware with PCI devices in domain other than 0000 or 4-digit.
Expected behavior
Dom0 and qubes to work as usual/expected.
Actual behavior
Dom0 will start, but qubes will be broken:
More info
For example, on Asus G614J these devices are in domain 10000:
Luckily it seems that all important devices (which might want to be assigned to qubes) are in the default domain. A possible quick workaround for those who want to fix it immediately is to patch a line of Python code in dom0 to ignore other devices, and restart qubesd:
/usr/lib/python3.8/site-packages/qubes/ext/pci.py
.on_device_list_pci
, above the lineyield PCIDevice(...)
, add this code for example:Then restart qubesd with service qubesd restart.
More info is in: https://forum.qubes-os.org/t/major-problem-with-qvm-pci-and-devices-in-general/8359/15
The text was updated successfully, but these errors were encountered: