J'ai un problème avec le PCI passthough dans XEN.
noyau : 4.15.0-23-generic CPU : Intel Core i7 - voir les spécifications sur le site d'Intel : il supporte VT-d, VT-x et toutes les autres technologies !
Vérification que XEN est prêt IOMMU / VT-d / VT-x :
xl dmesg | grep -i hvm
sortie :
(XEN) HVM: ASIDs enabled.
(XEN) HVM: VMX enabled
(XEN) HVM: Hardware Assisted Paging (HAP) detected
(XEN) HVM: HAP page sizes: 4kB, 2MB
vérifier l'IOMMU :
(XEN) Enabling APIC mode: Flat. Using 1 I/O APICs
(XEN) I/O virtualisation enabled
Donc, j'ai commencé (Passthought a PCI USB controller, where xx:yy.z is ID of lspci) :
# modprobe xen-pciback
# xl pci-assignable-add xx:yy.z
Vérifier que le dispositif est prêt à être transmis :
sudo xl pci-assignable-list
Il m'indique : 0000:xx:yy.z donc j'étais content que mon appareil soit prêt. Ensuite :
sudo nano /etc/xen/ubuntu.hvm
Je modifie la configuration en ajoutant cette ligne :
pci = ['0000:xx:yy.z']
Alors commencez :
sudo xl create /etc/xen/ubuntu.hvm
Et je vois ERROR :
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
Des idées ? J'ai cherché sur Google, mais je n'ai pas trouvé mon problème ! Mon deuxième PC AMD Ryzen a réussi à passer le PCI USB sans aucune erreur.