aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/kernel/amd_gart_64.c
diff options
context:
space:
mode:
authorYinghai Lu <yinghai@kernel.org>2012-11-16 19:38:50 -0800
committerH. Peter Anvin <hpa@linux.intel.com>2012-11-17 11:59:10 -0800
commit5101730cb0613b91d40b9bb7be6bb023d2f6aa24 (patch)
tree34264f77099265a65e2b37354fe23d257da7c52f /arch/x86/kernel/amd_gart_64.c
parentx86, mm: use pfn_range_is_mapped() with CPA (diff)
downloadlinux-dev-5101730cb0613b91d40b9bb7be6bb023d2f6aa24.tar.xz
linux-dev-5101730cb0613b91d40b9bb7be6bb023d2f6aa24.zip
x86, mm: use pfn_range_is_mapped() with gart
We are going to map ram only, so under max_low_pfn_mapped, between 4g and max_pfn_mapped does not mean mapped at all. Use pfn_range_is_mapped() directly. Signed-off-by: Yinghai Lu <yinghai@kernel.org> Link: http://lkml.kernel.org/r/1353123563-3103-14-git-send-email-yinghai@kernel.org Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
Diffstat (limited to 'arch/x86/kernel/amd_gart_64.c')
-rw-r--r--arch/x86/kernel/amd_gart_64.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/arch/x86/kernel/amd_gart_64.c b/arch/x86/kernel/amd_gart_64.c
index e66311200cbd..b574b295a2f9 100644
--- a/arch/x86/kernel/amd_gart_64.c
+++ b/arch/x86/kernel/amd_gart_64.c
@@ -768,10 +768,9 @@ int __init gart_iommu_init(void)
aper_base = info.aper_base;
end_pfn = (aper_base>>PAGE_SHIFT) + (aper_size>>PAGE_SHIFT);
- if (end_pfn > max_low_pfn_mapped) {
- start_pfn = (aper_base>>PAGE_SHIFT);
+ start_pfn = PFN_DOWN(aper_base);
+ if (!pfn_range_is_mapped(start_pfn, end_pfn))
init_memory_mapping(start_pfn<<PAGE_SHIFT, end_pfn<<PAGE_SHIFT);
- }
pr_info("PCI-DMA: using GART IOMMU.\n");
iommu_size = check_iommu_size(info.aper_base, aper_size);