[lkml]   [2019]   [Mar]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
Subject[PATCH 0/6] KVM/x86: Add workaround to support ExtINT with AVIC
This series is one of the prerequisites for supporting AMD AVIC with
in-kernel irqchip (kernel_irqchip=on).

Since AVIC does not support ExtINT interrupt, which is required during
the booting phase of Windows and FreeBSD VMs (e.g. PIT -> PIC -> ExtInt).
This results in VM hang in the boot loader with kernel_irqchip=on mode.

This series provides workaround by temporary deactivate AVIC and fallback
to use legacy interrupt injection (w/ vINTR and interrupt window).
Then re-activate AVIC once the intrrupts are handled.


Suravee Suthikulpanit (6):
KVM: x86: Add callback functions for handling APIC ID, DFR and LDR
svm: Add AMD AVIC handlers for APIC ID, DFR and LDR update
svm: Add support for APIC_ACCESS_PAGE_PRIVATE_MEMSLOT setup/destroy
kvm: lapic: Add apicv activate/deactivate helper function
KVM: x86: Add interface for run-time activate/de-activate APIC
svm: Temporary deactivate AVIC during ExtINT handling

arch/x86/include/asm/kvm_host.h | 11 ++++
arch/x86/kvm/lapic.c | 29 +++++++--
arch/x86/kvm/lapic.h | 1 +
arch/x86/kvm/svm.c | 106 ++++++++++++++++++++++++++++++--
arch/x86/kvm/x86.c | 48 +++++++++++++++
5 files changed, 185 insertions(+), 10 deletions(-)


 \ /
  Last update: 2019-03-22 13:49    [W:0.122 / U:5.900 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site