summaryrefslogtreecommitdiffstats
path: root/include/asm-sparc64/page.h
diff options
context:
space:
mode:
authorDavid S. Miller <davem@sunset.davemloft.net>2006-03-03 03:12:27 +0100
committerDavid S. Miller <davem@sunset.davemloft.net>2006-03-20 10:14:14 +0100
commit8bcd17411643beb9a601e032d0cf1016909a81d3 (patch)
treefc71e788df4fada768247fa7c12e983d2f6f1a32 /include/asm-sparc64/page.h
parent[SPARC64]: Fix _PAGE_EXEC handling. (diff)
downloadlinux-8bcd17411643beb9a601e032d0cf1016909a81d3.tar.xz
linux-8bcd17411643beb9a601e032d0cf1016909a81d3.zip
[SPARC64]: Do not allow mapping pages within 4GB of 64-bit VA hole.
The UltraSPARC T1 manual recommends this because the chip could instruction prefetch into the VA hole, and this would also make decoding certain kinds of memory access traps more difficult (because the chip sign extends certain pieces of trap state). Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/asm-sparc64/page.h')
-rw-r--r--include/asm-sparc64/page.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/include/asm-sparc64/page.h b/include/asm-sparc64/page.h
index 5426bb28a993..c277ac56b9d7 100644
--- a/include/asm-sparc64/page.h
+++ b/include/asm-sparc64/page.h
@@ -107,7 +107,8 @@ typedef unsigned long pgprot_t;
#endif
#define TASK_UNMAPPED_BASE (test_thread_flag(TIF_32BIT) ? \
- (_AC(0x0000000070000000,UL)) : (PAGE_OFFSET))
+ (_AC(0x0000000070000000,UL)) : \
+ (_AC(0xfffff80000000000,UL) + (1UL << 32UL)))
#endif /* !(__ASSEMBLY__) */