[PATCH 5/5] Create a hole in high linear address space
From: Zachary Amsden
Date: Wed Aug 24 2005 - 13:45:44 EST
Allow compile time creation of a hole at the high end of linear address space.
This makes accomodating a hypervisor a much more tractable problem by giving
it ample playground to live in. Currently, the hole size is fixed at config
time; I have experimented with dynamically sized holes, and have a later
patch that developes this potential, but it becomes much more useful once
the exact negotiation of linear address space with the hypervisor is defined.
The fixed compile time solution is sufficient for now.
Signed-off-by: Zachary Amsden <zach@xxxxxxxxxx>
Index: linux-2.6.13/arch/i386/Kconfig
===================================================================
--- linux-2.6.13.orig/arch/i386/Kconfig 2005-08-24 09:30:49.000000000 -0700
+++ linux-2.6.13/arch/i386/Kconfig 2005-08-24 09:58:56.000000000 -0700
@@ -803,6 +803,14 @@ config ARCH_SELECT_MEMORY_MODEL
def_bool y
depends on ARCH_SPARSEMEM_ENABLE
+config MEMORY_HOLE
+ int "Create hole at top of memory (0-512 MB)"
+ range 0 512
+ default "0"
+ help
+ Useful for creating a hole in the top of memory when running
+ inside of a virtual machine monitor.
+
source "mm/Kconfig"
config HAVE_ARCH_EARLY_PFN_TO_NID
Index: linux-2.6.13/include/asm-i386/fixmap.h
===================================================================
--- linux-2.6.13.orig/include/asm-i386/fixmap.h 2005-08-24 09:30:43.000000000 -0700
+++ linux-2.6.13/include/asm-i386/fixmap.h 2005-08-24 10:04:42.000000000 -0700
@@ -20,7 +20,7 @@
* Leave one empty page between vmalloc'ed areas and
* the start of the fixmap.
*/
-#define __FIXADDR_TOP 0xfffff000
+#define __FIXADDR_TOP (0xfffff000-(CONFIG_MEMORY_HOLE << 20))
#ifndef __ASSEMBLY__
#include <linux/kernel.h>
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/