[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <1548929853-25877-1-git-send-email-Tianyu.Lan@microsoft.com>
Date: Thu, 31 Jan 2019 18:17:30 +0800
From: lantianyu1986@...il.com
To: unlisted-recipients:; (no To-header on input)
Cc: Lan Tianyu <Tianyu.Lan@...rosoft.com>, akpm@...ux-foundation.org,
arnd@...db.de, bp@...en8.de, davem@...emloft.net,
devel@...uxdriverproject.org, gregkh@...uxfoundation.org,
haiyangz@...rosoft.com, hpa@...or.com,
iommu@...ts.linux-foundation.org, joro@...tes.org,
kys@...rosoft.com, linux-kernel@...r.kernel.org,
mchehab+samsung@...nel.org, mingo@...hat.com,
nicolas.ferre@...rochip.com, sashal@...nel.org,
sthemmin@...rosoft.com, tglx@...utronix.de, x86@...nel.org,
michael.h.kelley@...rosoft.com, vkuznets@...hat.com,
alex.williamson@...hat.com
Subject: [PATCH 0/3] x86/Hyper-V/IOMMU: Add Hyper-V IOMMU driver to support x2apic mode
From: Lan Tianyu <Tianyu.Lan@...rosoft.com>
On the bare metal, enabling X2APIC mode requires interrupt remapping
function which helps to deliver irq to cpu with 32-bit APIC ID.
Hyper-V doesn't provide interrupt remapping function so far and Hyper-V
MSI protocol already supports to deliver interrupt to the CPU whose
virtual processor index is more than 255. IO-APIC interrupt still has
8-bit APIC ID limitation.
This patchset is to add Hyper-V stub IOMMU driver in order to enable
X2APIC mode successfully in Hyper-V Linux guest. The driver returns X2APIC
interrupt remapping capability when X2APIC mode is available. X2APIC
destination mode is set to physical by PATCH 1 when X2APIC is available.
Hyper-V IOMMU driver will scan cpu 0~255 and set cpu into IO-APIC MAX cpu
affinity cpumask if its APIC ID is 8-bit. Driver creates a Hyper-V irq domain
to limit IO-APIC interrupts' affinity and make sure cpus assigned with IO-APIC
interrupt are in the scope of IO-APIC MAX cpu affinity.
Lan Tianyu (3):
x86/Hyper-V: Set x2apic destination mode to physical when x2apic is
available
HYPERV/IOMMU: Add Hyper-V stub IOMMU driver
MAINTAINERS: Add Hyper-V IOMMU driver into Hyper-V CORE AND DRIVERS
scope
MAINTAINERS | 1 +
arch/x86/kernel/cpu/mshyperv.c | 14 +++
drivers/iommu/Kconfig | 7 ++
drivers/iommu/Makefile | 1 +
drivers/iommu/hyperv-iommu.c | 189 +++++++++++++++++++++++++++++++++++++++++
drivers/iommu/irq_remapping.c | 3 +
drivers/iommu/irq_remapping.h | 1 +
7 files changed, 216 insertions(+)
create mode 100644 drivers/iommu/hyperv-iommu.c
--
2.7.4
Powered by blists - more mailing lists