This patch allocates the percpu VM area using the fix addresses. It defines currently 1 meg per cpu. Signed-off-by: Steven Rostedt <rostedt@xxxxxxxxxxx> Index: linux-2.6.16-test/include/asm-i386/fixmap.h =================================================================== --- linux-2.6.16-test.orig/include/asm-i386/fixmap.h 2006-05-17 04:32:27.000000000 -0400 +++ linux-2.6.16-test/include/asm-i386/fixmap.h 2006-05-17 04:59:34.000000000 -0400 @@ -32,6 +32,10 @@ #include <asm/kmap_types.h> #endif +/* One meg per cpu of VM space */ +#define PERCPU_PAGES 256 +#define PERCPU_SIZE (PERCPU_PAGES << PAGE_SHIFT) + /* * Here we define all the compile-time 'special' virtual * addresses. The point is to have a constant address at @@ -83,6 +87,8 @@ enum fixed_addresses { #ifdef CONFIG_PCI_MMCONFIG FIX_PCIE_MCFG, #endif + FIX_PERCPU_BEGIN, + FIX_PERCPU_END = FIX_PERCPU_BEGIN+(PERCPU_PAGES*NR_CPUS)-1, __end_of_permanent_fixed_addresses, /* temporary boot-time mappings, used before ioremap() is functional */ #define NR_FIX_BTMAPS 16