[PATCH 19/19] iommu/vt-d: Don't disable IR when it was previously enabled

From: Joerg Roedel
Date: Sat Jun 13 2015 - 02:49:14 EST


From: Joerg Roedel <jroedel@xxxxxxx>

Keep it enabled in kdump kernel to guarantee interrupt
delivery.

Signed-off-by: Joerg Roedel <jroedel@xxxxxxx>
---
drivers/iommu/intel_irq_remapping.c | 6 ++----
1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/drivers/iommu/intel_irq_remapping.c b/drivers/iommu/intel_irq_remapping.c
index 14e10de..47fcebf 100644
--- a/drivers/iommu/intel_irq_remapping.c
+++ b/drivers/iommu/intel_irq_remapping.c
@@ -742,9 +742,6 @@ static int __init intel_prepare_irq_remapping(void)
pr_info("%s does not support EIM\n", iommu->name);
eim = 0;
}
-
- /* Disable IRQ remapping if it is already enabled */
- iommu_disable_irq_remapping(iommu);
}

eim_mode = eim;
@@ -777,7 +774,8 @@ static int __init intel_enable_irq_remapping(void)
* Setup Interrupt-remapping for all the DRHD's now.
*/
for_each_iommu(iommu, drhd) {
- iommu_enable_irq_remapping(iommu);
+ if (!ir_pre_enabled(iommu))
+ iommu_enable_irq_remapping(iommu);
setup = true;
}

--
1.9.1

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/