iommu/hyper-v: Allow hyperv irq remapping without x2apic
authorNuno Das Neves <nunodasneves@linux.microsoft.com>
Thu, 17 Nov 2022 20:11:39 +0000 (12:11 -0800)
committerWei Liu <wei.liu@kernel.org>
Mon, 28 Nov 2022 16:48:20 +0000 (16:48 +0000)
commitfea858dc5d901626e5d794037b5bff9f59b9ded7
treef207353c16bcb7322a2edc098df715fb3595ee5f
parent0408f16b43e578e70ad12a857159a0a771cfaa7c
iommu/hyper-v: Allow hyperv irq remapping without x2apic

If x2apic is not available, hyperv-iommu skips remapping
irqs. This breaks root partition which always needs irqs
remapped.

Fix this by allowing irq remapping regardless of x2apic,
and change hyperv_enable_irq_remapping() to return
IRQ_REMAP_XAPIC_MODE in case x2apic is missing.

Tested with root and non-root hyperv partitions.

Signed-off-by: Nuno Das Neves <nunodasneves@linux.microsoft.com>
Reviewed-by: Tianyu Lan <Tianyu.Lan@microsoft.com>
Reviewed-by: Michael Kelley <mikelley@microsoft.com>
Link: https://lore.kernel.org/r/1668715899-8971-1-git-send-email-nunodasneves@linux.microsoft.com
Signed-off-by: Wei Liu <wei.liu@kernel.org>
arch/x86/kernel/cpu/mshyperv.c
drivers/iommu/Kconfig
drivers/iommu/hyperv-iommu.c