În urma lucrărilor recente din tabelul de pagini AMD IOMMU v2 și a altor îmbunătățiri IOMMU ca parte a efortului AMD de a îmbunătăți și mai mult suportul pentru virtualizarea Linux pe platformele de server EPYC, cele mai recente corecții AMD de ieri sunt pentru lucrul pe IOMMU virtualizat accelerat de hardware (AMD). HW-vIOMMU).

Funcționalitatea AMD Hardware Accelerated Virtualized IOMMU oferă accelerare hardware parțială pentru implementarea IOMMU-urilor pentru oaspeți cu virtualizarea buffer-ului de comandă pentru invitați, jurnalul de evenimente pentru oaspeți și jurnalul PPR pentru oaspeți. În cele din urmă, munca se referă la îmbunătățirea performanței I/O PCI pass-through, oferind în același timp protecție I/O pentru oaspeți.

Seria de corecții trimisă miercuri de inginerul AMD Linux Suravee Suthikulpanit adaugă în continuare:

„În plus, această caracteristică poate fi utilizată în combinație cu tabele de pagini IOMMU imbricate pentru traducere accelerată a adreselor de la GIOVA la GPA. În acest caz, tabelul paginii gazdă (denumită etapa 2 sau v1) este gestionată de hypervisor (adică KVM/VFIO), iar tabelul paginii de oaspeți (denumită etapa 1 sau v2) este gestionată de oaspetele IOMMU driver (de exemplu, la pornirea nucleului oaspete cu modul amd_iommu=pgtable_v2).

Deoarece hardware-ul IOMMU virtualizează buffer-ul de comandă invitat, acest lucru permite accelerarea operațiunilor IOMMU, cum ar fi invalidarea paginilor invitate (adică etapa1) atunci când comanda este emisă de kernel-ul invitat fără intervenția hypervisorului.

Această serie este implementată pe lângă cadrul IOMMUFD. Ea folosește API-urile și ioctls-urile existente pentru a furniza informații despre iommu pentru oaspeți (de ex. struct iommu_hw_info_amd) și permițând oaspeților să furnizeze informații despre tabelul paginii de oaspeți (adică struct iommu_hwpt_amd_v2) pentru configurarea domeniului utilizatorului.”

Lucrul AMD IOMMU în această direcție se întâmplă de ceva vreme, așa că este bine să văd că se apropie.

În 2021, AMD a prezentat la conferința kVM Forum în jurul efortului lor de prototip la acel moment. patch-urile sunt încă marcate ca o „cerere de comentarii”, deoarece finalizează implementarea și, sperăm, că ajung la kernel-ul principal Linux într-un viitor nu prea îndepărtat.

Categories: IT Info