summaryrefslogtreecommitdiffstats
path: root/sys/i386/include/vmparam.h
diff options
context:
space:
mode:
authorkmacy <kmacy@FreeBSD.org>2008-08-15 20:51:31 +0000
committerkmacy <kmacy@FreeBSD.org>2008-08-15 20:51:31 +0000
commit8c05b8ec899e2b20d5eb286770d302b94f0e4536 (patch)
tree01c30bdd7553d9c3ff945b2422e697cffe0f9b20 /sys/i386/include/vmparam.h
parent6bfca819a4bf3b98d63e7f4aaed6fa5b0520008a (diff)
downloadFreeBSD-src-8c05b8ec899e2b20d5eb286770d302b94f0e4536.zip
FreeBSD-src-8c05b8ec899e2b20d5eb286770d302b94f0e4536.tar.gz
Integrate support for xen in to i386 common code.
MFC after: 1 month
Diffstat (limited to 'sys/i386/include/vmparam.h')
-rw-r--r--sys/i386/include/vmparam.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/sys/i386/include/vmparam.h b/sys/i386/include/vmparam.h
index 3d34419..f114232 100644
--- a/sys/i386/include/vmparam.h
+++ b/sys/i386/include/vmparam.h
@@ -145,8 +145,12 @@
* Kernel physical load address.
*/
#ifndef KERNLOAD
+#if defined(XEN) && !defined(XEN_PRIVILEGED_GUEST)
+#define KERNLOAD 0
+#else
#define KERNLOAD (1 << PDRSHIFT)
#endif
+#endif /* !defined(KERNLOAD) */
/*
* Virtual addresses of things. Derived from the page directory and
@@ -155,7 +159,12 @@
* messy at times, but hey, we'll do anything to save a page :-)
*/
+#ifdef XEN
+#define VM_MAX_KERNEL_ADDRESS HYPERVISOR_VIRT_START
+#else
#define VM_MAX_KERNEL_ADDRESS VADDR(KPTDI+NKPDE-1, NPTEPG-1)
+#endif
+
#define VM_MIN_KERNEL_ADDRESS VADDR(PTDPTDI, PTDPTDI)
#define KERNBASE VADDR(KPTDI, 0)
OpenPOWER on IntegriCloud