aboutsummaryrefslogtreecommitdiffstats
path: root/arch/sparc64/mm/generic.c
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2005-11-29 13:59:03 -0800
committerDavid S. Miller <davem@davemloft.net>2005-11-29 13:59:03 -0800
commitcab3f16febeaf1a60e38159ff578f609f9976544 (patch)
tree94fdc12b7ae46d285180be9fa8d03e7be6d63f71 /arch/sparc64/mm/generic.c
parentMerge master.kernel.org:/pub/scm/linux/kernel/git/tglx/mtd-2.6 (diff)
downloadlinux-dev-cab3f16febeaf1a60e38159ff578f609f9976544.tar.xz
linux-dev-cab3f16febeaf1a60e38159ff578f609f9976544.zip
[SPARC64]: Fix >8K I/O mappings.
Increment the PFN field of the PTE so that the tests on vm_pfn in mm/memory.c match up. The TLB ignores these lower bits for larger page sizes, so it's OK to set things like this. Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'arch/sparc64/mm/generic.c')
-rw-r--r--arch/sparc64/mm/generic.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/sparc64/mm/generic.c b/arch/sparc64/mm/generic.c
index d9396c1721cd..580b63da836b 100644
--- a/arch/sparc64/mm/generic.c
+++ b/arch/sparc64/mm/generic.c
@@ -77,6 +77,7 @@ static inline void io_remap_pte_range(struct mm_struct *mm, pte_t * pte,
BUG_ON(!pte_none(*pte));
set_pte_at(mm, address, pte, entry);
address += PAGE_SIZE;
+ pte_val(entry) += PAGE_SIZE;
pte++;
} while (address < curend);
} while (address < end);