]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
iommu: Fix compilation without CONFIG_IOMMU_INTEL
authorBert Karwatzki <spasswolf@web.de>
Thu, 7 Mar 2024 19:44:19 +0000 (20:44 +0100)
committerSasha Levin <sashal@kernel.org>
Tue, 26 Mar 2024 22:19:39 +0000 (18:19 -0400)
[ Upstream commit 70bad345e622c23bb530016925c936ab04a646ac ]

When the kernel is comiled with CONFIG_IRQ_REMAP=y but without
CONFIG_IOMMU_INTEL compilation fails since commit def054b01a8678 with an
undefined reference to device_rbtree_find(). This patch makes sure that
intel specific code is only compiled with CONFIG_IOMMU_INTEL=y.

Signed-off-by: Bert Karwatzki <spasswolf@web.de>
Fixes: 80a9b50c0b9e ("iommu/vt-d: Improve ITE fault handling if target device isn't present")
Reviewed-by: Lu Baolu <baolu.lu@linux.intel.com>
Link: https://lore.kernel.org/r/20240307194419.15801-1-spasswolf@web.de
Signed-off-by: Joerg Roedel <jroedel@suse.de>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/iommu/Kconfig
drivers/iommu/intel/Makefile
drivers/iommu/irq_remapping.c

index 2b12b583ef4b1edb8c296f59e7e6d4dcc4ca095e..d57c5adf932e3676ee9b790c582fd2f4ca8118fe 100644 (file)
@@ -191,7 +191,7 @@ source "drivers/iommu/iommufd/Kconfig"
 config IRQ_REMAP
        bool "Support for Interrupt Remapping"
        depends on X86_64 && X86_IO_APIC && PCI_MSI && ACPI
-       select DMAR_TABLE
+       select DMAR_TABLE if INTEL_IOMMU
        help
          Supports Interrupt remapping for IO-APIC and MSI devices.
          To use x2apic mode in the CPU's which support x2APIC enhancements or
index 7af3b8a4f2a0054031accd8be92d753192b6485c..29d26a4371327c839f4cd23d1452fcba26806638 100644 (file)
@@ -5,5 +5,7 @@ obj-$(CONFIG_DMAR_TABLE) += trace.o cap_audit.o
 obj-$(CONFIG_DMAR_PERF) += perf.o
 obj-$(CONFIG_INTEL_IOMMU_DEBUGFS) += debugfs.o
 obj-$(CONFIG_INTEL_IOMMU_SVM) += svm.o
+ifdef CONFIG_INTEL_IOMMU
 obj-$(CONFIG_IRQ_REMAP) += irq_remapping.o
+endif
 obj-$(CONFIG_INTEL_IOMMU_PERF_EVENTS) += perfmon.o
index 83314b9d8f38bfcf63652ddb63e5c4c05d4c7f93..ee59647c20501ec29792a19b381b0d133313cac8 100644 (file)
@@ -99,7 +99,8 @@ int __init irq_remapping_prepare(void)
        if (disable_irq_remap)
                return -ENOSYS;
 
-       if (intel_irq_remap_ops.prepare() == 0)
+       if (IS_ENABLED(CONFIG_INTEL_IOMMU) &&
+           intel_irq_remap_ops.prepare() == 0)
                remap_ops = &intel_irq_remap_ops;
        else if (IS_ENABLED(CONFIG_AMD_IOMMU) &&
                 amd_iommu_irq_ops.prepare() == 0)