AMD Bersiap Untuk Akhirnya Mendukung Virtual NMI Dengan CPU Mereka (VNMI)

  • Post author:
  • Post category:Linux

Tampaknya dengan prosesor AMD Zen 4 yang akan datang akhirnya akan ada dukungan Virtual NMI (VNMI) untuk virtualisasi, fitur yang telah didukung oleh CPU Intel selama lebih dari satu dekade terakhir.
Insinyur AMD pada hari Kamis mengirimkan patch kernel Linux awal untuk mengaktifkan dukungan Virtual NMI (Non-Maskable Interrupt) ketika didukung oleh prosesor. Kehadiran dukungan VNMI terdeteksi oleh sedikit fitur ID CPU tetapi mengingat waktunya, mereka sangat terlambat dalam mendukungnya untuk CPU yang ada dan tidak membicarakan keberadaannya sampai sekarang, atau kemungkinan besar: VNMI sedang diperkenalkan dengan AMD Zen mendatang 4 prosesor.
Santosh Shukla dari AMD merangkum implementasi Virtual NMI mereka sebagai:
Saat ini, NMI dikirimkan ke tamu menggunakan mekanisme Event Injection. Mekanisme Injeksi Peristiwa tidak menghalangi pengiriman NMI berikutnya. Jadi Hypervisor perlu melacak pengiriman NMI dan penyelesaiannya (dengan mencegat IRET) sebelum mengirim NMI baru.
Virtual NMI (VNMI) memungkinkan hypervisor untuk menyuntikkan NMI ke tamu tanpa menggunakan mekanisme Event Injection yang berarti tidak diperlukan untuk melacak NMI tamu dan mencegat IRET. Untuk mencapai itu, fitur VNMI menyediakan bit kemampuan NMI dan NMI_MASK tervirtualisasi di
VMCB intr_control –
V_NMI(11) – Menunjukkan apakah NMI virtual tertunda di tamu.
V_NMI_MASK(12) – Menunjukkan apakah NMI virtual tertutup di tamu.
V_NMI_ENABLE(26) – Mengaktifkan fitur virtualisasi NMI untuk tamu.
Ketika Hypervisor ingin menyuntikkan NMI, itu akan mengatur bit V_NMI, Prosesor akan menghapus bit V_NMI dan Mengatur V_NMI_MASK yang berarti Tamu yang menangani NMI, Setelah tamu menangani NMI, Prosesor akan menghapus V_NMI_MASK pada penyelesaian IRET yang berhasil instruksi Atau jika VMEXIT terjadi saat mengirimkan NMI virtual. Pada dasarnya VNMI merupakan pengoptimalan efisiensi dengan tamu virtual AMD tidak perlu melacak status NMI tamu dan khawatir tentang mencegat IRET untuk penanganan penyelesaian NMI. Virtual NMI telah lama didukung oleh CPU Intel – kode kernel Linux Intel untuk virtualisasi sebenarnya membutuhkannya dan telah dimasukkan ke dalam kernel di sisi Intel sejak 2008.

Mengingat waktu dari seri patch Linux ini, VNMI mungkin akan tayang perdana dengan perangkat keras seri Zen 4 Ryzen 7000 dan AMD EPYC 7004 generasi berikutnya.

Itulah berita seputar AMD Bersiap Untuk Akhirnya Mendukung Virtual NMI Dengan CPU Mereka (VNMI), semoga bermanfaat. Disadur dari Phoronix.com.