[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20190322115702.10166-1-suravee.suthikulpanit@amd.com>
Date: Fri, 22 Mar 2019 11:57:22 +0000
From: "Suthikulpanit, Suravee" <Suravee.Suthikulpanit@....com>
To: "linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"kvm@...r.kernel.org" <kvm@...r.kernel.org>
CC: "joro@...tes.org" <joro@...tes.org>,
"pbonzini@...hat.com" <pbonzini@...hat.com>,
"rkrcmar@...hat.com" <rkrcmar@...hat.com>,
"Suthikulpanit, Suravee" <Suravee.Suthikulpanit@....com>
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.
Thanks,
Suravee
Suravee Suthikulpanit (6):
KVM: x86: Add callback functions for handling APIC ID, DFR and LDR
update
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
virtualization
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(-)
--
2.17.1
Powered by blists - more mailing lists