У меня есть проблема с PCI passthough в XEN.
ядро: 4.15.0-23-универсальный ЦП: Intel Core i7 - видел спецификации на веб-сайте Intel: это поддерживает VT-d, VT-x и все другие технологии!
Проверка XEN является готовым IOMMU / VT-d / VT-x:
xl dmesg | grep -i hvm
вывод:
(XEN) HVM: ASIDs enabled.
(XEN) HVM: VMX enabled
(XEN) HVM: Hardware Assisted Paging (HAP) detected
(XEN) HVM: HAP page sizes: 4kB, 2MB
проверьте IOMMU:
(XEN) Enabling APIC mode: Flat. Using 1 I/O APICs
(XEN) I/O virtualisation enabled
Так, я запустил (Passthough контроллер USB PCI, где xx:yy.z является идентификатором lspci):
# modprobe xen-pciback
# xl pci-assignable-add xx:yy.z
Проверьте, что устройство готово быть passthough:
sudo xl pci-assignable-list
Это показывает мне: 0000:xx:yy.z, таким образом, я был рад, что мое устройство готово. Затем:
sudo nano /etc/xen/ubuntu.hvm
Я редактирую конфигурацию, добавляющую эту строку:
pci = ['0000:xx:yy.z']
Затем запустите:
sudo xl create /etc/xen/ubuntu.hvm
И я вижу ОШИБКУ:
Parsing config from /etc/xen/ubuntu.hvm
libxl: error: libxl_pci.c:1111:do_pci_add: Domain 2:xc_assign_device failed: Cannot allocate memory
libxl: error: libxl_pci.c:1306:libxl__add_pcidevs: Domain 2:libxl_device_pci_add failed: -3
libxl: error: libxl_create.c:1458:domcreate_attach_devices: Domain 2:unable to add pci devices
libxl: error: libxl_domain.c:1003:libxl__destroy_domid: Domain 2:Non-existant domain
libxl: error: libxl_domain.c:962:domain_destroy_callback: Domain 2:Unable to destroy guest
libxl: error: libxl_domain.c:889:domain_destroy_cb: Domain 2:Destruction of domain failed
Какие-либо идеи? Я погуглил, но не нашел свою проблему! Мой второй AMD Ryzen ПК passthough PCI, за которым следуют, USB без любых ошибок.
Необходимо удостовериться, что dom0 не получает устройство PCI, которое Вы пробуете к передаче во время начальной загрузки.
Удостоверьтесь, что это указано в /etc/default/grub.d/xen.cfg
в строке GRUB_CMDLINE_XEN="pciback.hide=(xx:yy.z)"
выполненный update-grub
и перезагрузка.