| From fcd0861db1cf4e6ed99f60a815b7b72c2ed36ea4 Mon Sep 17 00:00:00 2001 |
| From: Joerg Roedel <joerg.roedel@amd.com> |
| Date: Tue, 11 Oct 2011 17:41:32 +0200 |
| Subject: iommu/amd: Fix wrong shift direction |
| |
| From: Joerg Roedel <joerg.roedel@amd.com> |
| |
| commit fcd0861db1cf4e6ed99f60a815b7b72c2ed36ea4 upstream. |
| |
| The shift direction was wrong because the function takes a |
| page number and i is the address is the loop. |
| |
| 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 |
| @@ -1066,7 +1066,7 @@ static int alloc_new_range(struct dma_op |
| if (!pte || !IOMMU_PTE_PRESENT(*pte)) |
| continue; |
| |
| - dma_ops_reserve_addresses(dma_dom, i << PAGE_SHIFT, 1); |
| + dma_ops_reserve_addresses(dma_dom, i >> PAGE_SHIFT, 1); |
| } |
| |
| update_domain(&dma_dom->domain); |