Messages in this thread | | | From | Suravee Suthikulpanit <> | Subject | [PATCH v2 0/3] KVM: SVM: Fix guest not booting w/ AVIC enabled | Date | Tue, 12 Sep 2017 10:42:39 -0500 |
| |
Certain QEMU options fails to boot VM guest w/ SVM AVIC enabled (e.g. modprobe kvm_amd avic=1). Investigation shows that this mainly due to AVIC hardware does not trap into hypervisor when guest OS writes to APIC_EOI register.
The boot hang is caused by missing timer interrupt when using in-kernel PIT model (e.g. launch qemu w/ '-no-hpet' option) since it requires irq acknowledgmen before injecting another interrupt in case irq re-injection is enabled (normally default).
Changes from V1 (https://lkml.org/lkml/2017/9/5/826) * Consolidate irqchip_split() check to only one place (per Radim).
Suravee Suthikulpanit (3): KVM: SVM: Refactor AVIC vcpu initialization into avic_init_vcpu() KVM: Add struct kvm_vcpu pointer parameter to get_enable_apicv() KVM: SVM: Add irqchip_split() checks before enabling AVIC
arch/x86/include/asm/kvm_host.h | 2 +- arch/x86/kvm/svm.c | 43 ++++++++++++++++++++++++++++------------- arch/x86/kvm/vmx.c | 2 +- arch/x86/kvm/x86.c | 2 +- 4 files changed, 33 insertions(+), 16 deletions(-)
-- 1.8.3.1
| |