iommu.lists.linux-foundation.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/3] x86/Hyper-V/IOMMU: Add Hyper-V IOMMU driver to support x2apic mode
@ 2019-01-31 10:17 lantianyu1986
  2019-01-31 10:17 ` [PATCH 1/3] x86/Hyper-V: Set x2apic destination mode to physical when x2apic is available lantianyu1986
  2019-01-31 10:17 ` [PATCH 2/3] HYPERV/IOMMU: Add Hyper-V stub IOMMU driver lantianyu1986
  0 siblings, 2 replies; 17+ messages in thread
From: lantianyu1986 @ 2019-01-31 10:17 UTC (permalink / raw)
  Cc: Lan Tianyu, akpm, arnd, bp, davem, devel, gregkh, haiyangz, hpa,
	iommu, joro, kys, linux-kernel, mchehab+samsung, mingo,
	nicolas.ferre, sashal, sthemmin, tglx, x86, michael.h.kelley,
	vkuznets, alex.williamson

From: Lan Tianyu <Tianyu.Lan@microsoft.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

^ permalink raw reply	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2019-02-02  6:20 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-01-31 10:17 [PATCH 0/3] x86/Hyper-V/IOMMU: Add Hyper-V IOMMU driver to support x2apic mode lantianyu1986
2019-01-31 10:17 ` [PATCH 1/3] x86/Hyper-V: Set x2apic destination mode to physical when x2apic is available lantianyu1986
2019-01-31 11:57   ` Greg KH
2019-01-31 12:02     ` Tianyu Lan
2019-02-01  7:06   ` Dan Carpenter
2019-02-01  7:10     ` Tianyu Lan
2019-01-31 10:17 ` [PATCH 2/3] HYPERV/IOMMU: Add Hyper-V stub IOMMU driver lantianyu1986
2019-01-31 11:59   ` Greg KH
2019-01-31 12:08     ` Tianyu Lan
2019-01-31 14:04   ` Vitaly Kuznetsov
2019-02-01  5:45     ` Tianyu Lan
     [not found]   ` <1548929853-25877-3-git-send-email-Tianyu.Lan-0li6OtcxBFHby3iVrkZq2A@public.gmane.org>
2019-02-01 14:51     ` Sasha Levin
2019-02-02  6:02       ` Tianyu Lan
2019-02-01 16:34   ` Joerg Roedel
2019-02-02  2:51     ` Tianyu Lan
2019-02-01 17:00   ` Robin Murphy
2019-02-02  6:20     ` Tianyu Lan

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).