summaryrefslogtreecommitdiffstats
path: root/arch/mips/include/asm/uaccess.h
diff options
context:
space:
mode:
authorRalf Baechle <ralf@linux-mips.org>2013-05-09 17:56:40 +0200
committerRalf Baechle <ralf@linux-mips.org>2013-05-09 17:56:40 +0200
commit5e0e61dd2c89c673f89fb57dcd3cc746dc0c1706 (patch)
tree5ebe6156cbc8620625b736a5c9f4d3f47e6d9ebc /arch/mips/include/asm/uaccess.h
parentMerge branch 'mips-next-3.10' of git://git.linux-mips.org/pub/scm/john/linux-... (diff)
parentKVM/MIPS32: Binary patching of select privileged instructions. (diff)
downloadlinux-5e0e61dd2c89c673f89fb57dcd3cc746dc0c1706.tar.xz
linux-5e0e61dd2c89c673f89fb57dcd3cc746dc0c1706.zip
Merge branch 'next/kvm' into mips-for-linux-next
Diffstat (limited to 'arch/mips/include/asm/uaccess.h')
-rw-r--r--arch/mips/include/asm/uaccess.h11
1 files changed, 10 insertions, 1 deletions
diff --git a/arch/mips/include/asm/uaccess.h b/arch/mips/include/asm/uaccess.h
index bd87e36bf26a..b46caab453a5 100644
--- a/arch/mips/include/asm/uaccess.h
+++ b/arch/mips/include/asm/uaccess.h
@@ -23,7 +23,11 @@
*/
#ifdef CONFIG_32BIT
-#define __UA_LIMIT 0x80000000UL
+#ifdef CONFIG_KVM_GUEST
+#define __UA_LIMIT 0x40000000UL
+#else
+#define __UA_LIMIT 0x80000000UL
+#endif
#define __UA_ADDR ".word"
#define __UA_LA "la"
@@ -55,8 +59,13 @@ extern u64 __ua_limit;
* address in this range it's the process's problem, not ours :-)
*/
+#ifdef CONFIG_KVM_GUEST
+#define KERNEL_DS ((mm_segment_t) { 0x80000000UL })
+#define USER_DS ((mm_segment_t) { 0xC0000000UL })
+#else
#define KERNEL_DS ((mm_segment_t) { 0UL })
#define USER_DS ((mm_segment_t) { __UA_LIMIT })
+#endif
#define VERIFY_READ 0
#define VERIFY_WRITE 1