blob: 8bc050e0258574e0a08d7b21a9b28264018c003b [file] [log] [blame]
From joerg.roedel@amd.com Mon Jan 12 16:39:41 2009
From: Joerg Roedel <joerg.roedel@amd.com>
Date: Fri, 19 Dec 2008 14:42:15 +0100
Subject: AMD IOMMU: fix wrong loop counter in free_pagetables
To: stable@kernel.org
Cc: Joerg Roedel <joerg.roedel@amd.com>
Message-ID: <1229694135-27157-5-git-send-email-joerg.roedel@amd.com>
From: Joerg Roedel <joerg.roedel@amd.com>
Upstream commit 3cc3d84bffbd93bdb671ac7961b12cd98fbb9266
This fixes a bug which causes the driver to go in an endless loop if
initialization fails and its resources are freed.
Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
---
arch/x86/kernel/amd_iommu.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
--- a/arch/x86/kernel/amd_iommu.c
+++ b/arch/x86/kernel/amd_iommu.c
@@ -487,7 +487,7 @@ static void dma_ops_free_pagetable(struc
continue;
p2 = IOMMU_PTE_PAGE(p1[i]);
- for (j = 0; j < 512; ++i) {
+ for (j = 0; j < 512; ++j) {
if (!IOMMU_PTE_PRESENT(p2[j]))
continue;
p3 = IOMMU_PTE_PAGE(p2[j]);