AMD IOMMU: panic if completion wait loop fails
authorJoerg Roedel <joerg.roedel@amd.com>
Wed, 17 Dec 2008 15:36:44 +0000 (16:36 +0100)
committerJoerg Roedel <joerg.roedel@amd.com>
Wed, 17 Dec 2008 15:36:44 +0000 (16:36 +0100)
Impact: prevents data corruption after a failed completion wait loop

Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
arch/x86/kernel/amd_iommu.c

index a7b6dec6fc3f4afc72f57651b1523156d415431b..0a60d60ed036b264e6d4c05174dfc3b464574852 100644 (file)
@@ -235,8 +235,9 @@ static int iommu_completion_wait(struct amd_iommu *iommu)
        status &= ~MMIO_STATUS_COM_WAIT_INT_MASK;
        writel(status, iommu->mmio_base + MMIO_STATUS_OFFSET);
 
-       if (unlikely((i == EXIT_LOOP_COUNT) && printk_ratelimit()))
-               printk(KERN_WARNING "AMD IOMMU: Completion wait loop failed\n");
+       if (unlikely(i == EXIT_LOOP_COUNT))
+               panic("AMD IOMMU: Completion wait loop failed\n");
+
 out:
        spin_unlock_irqrestore(&iommu->lock, flags);