diff options
Diffstat (limited to 'sys/i386/include/vmparam.h')
-rw-r--r-- | sys/i386/include/vmparam.h | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/sys/i386/include/vmparam.h b/sys/i386/include/vmparam.h index 3d34419b9844..f114232e90bb 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) |