summaryrefslogtreecommitdiff
path: root/arch
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
parent4168f7a31801bba6acc18662978d24ec850bbbd0 (diff)
downloadlinux-3.10-cab3f16febeaf1a60e38159ff578f609f9976544.tar.gz
linux-3.10-cab3f16febeaf1a60e38159ff578f609f9976544.tar.bz2
linux-3.10-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')
-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 d9396c1721c..580b63da836 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);