]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
AMD IOMMU: fix wrong loop counter in free_pagetables
authorJoerg Roedel <joerg.roedel@amd.com>
Fri, 19 Dec 2008 13:42:15 +0000 (14:42 +0100)
committerGreg Kroah-Hartman <gregkh@suse.de>
Wed, 14 Jan 2009 17:44:09 +0000 (09:44 -0800)
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

index a1493bb3ed9e23cbc3e398c20ae56ec0703b16d4..20804d06c70bf6e9ae0bb635f763a5c675a96c7a 100644 (file)
@@ -487,7 +487,7 @@ static void dma_ops_free_pagetable(struct dma_ops_domain *dma_dom)
                        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]);