1 diff -Naur linux-2.6.10/arch/i386/Kconfig linux-2.6.10/arch/i386/Kconfig
2 --- linux-2.6.10/arch/i386/Kconfig 2004-08-25 21:38:29.435578760 -0600
3 +++ linux-2.6.10/arch/i386/Kconfig 2004-08-25 20:50:36.000000000 -0600
10 + depends on NOHIGHMEM
11 + prompt "User address space size"
15 + bool "3GB User Address Space"
19 + bool "2GB User Address Space"
23 + bool "1GB User Address Space"
28 # Common NUMA Features
30 bool "Numa Memory Allocation and Scheduler Support"
31 diff -Naur linux-2.6.10/include/asm-generic/page_offset.h linux-2.6.10/include/asm-generic/page_offset.h
32 --- linux-2.6.10/include/asm-generic/page_offset.h 1969-12-31 17:00:00.000000000 -0700
33 +++ linux-2.6.10/include/asm-generic/page_offset.h 2004-08-25 20:51:03.000000000 -0600
36 +#include <linux/config.h>
40 +#if defined(CONFIG_USER_1GB)
41 +#define PAGE_OFFSET_RAW 0x40000000
42 +#elif defined(CONFIG_USER_2GB)
43 +#define PAGE_OFFSET_RAW 0x80000000
45 +#define PAGE_OFFSET_RAW 0xc0000000
50 +#if defined(CONFIG_USER_1GB)
51 +#define PAGE_OFFSET_RAW 0x40000000UL
52 +#elif defined(CONFIG_USER_2GB)
53 +#define PAGE_OFFSET_RAW 0x80000000UL
55 +#define PAGE_OFFSET_RAW 0xc0000000UL
59 diff -Naur linux-2.6.10/include/asm-generic/vmlinux.lds.h linux-2.6.10/include/asm-generic/vmlinux.lds.h
60 --- linux-2.6.10/include/asm-generic/vmlinux.lds.h 2004-08-14 04:54:48.000000000 -0600
61 +++ linux-2.6.10/include/asm-generic/vmlinux.lds.h 2004-08-25 20:49:32.000000000 -0600
64 +#include <asm-generic/page_offset.h>
69 diff -Naur linux-2.6.10/include/asm-i386/page.h linux-2.6.10/include/asm-i386/page.h
70 --- linux-2.6.10/include/asm-i386/page.h 2004-08-14 04:54:50.000000000 -0600
71 +++ linux-2.6.10/include/asm-i386/page.h 2004-08-25 20:49:32.000000000 -0600
73 #define __PAGE_OFFSET (0x02000000)
74 #define TASK_SIZE ((current->personality & 0x8000000) ? 0xc0000000 : 0xff000000)
76 -#define __PAGE_OFFSET (0xc0000000)
77 -#define TASK_SIZE (0xc0000000)
78 +#include <asm-generic/page_offset.h>
79 +#define __PAGE_OFFSET (PAGE_OFFSET_RAW)
80 +#define TASK_SIZE (PAGE_OFFSET_RAW)
84 diff -Naur linux-2.6.10/arch/i386/mm/pageattr.c linux-2.6.10/arch/i386/mm/pageattr.c
85 --- linux-2.6.10/arch/i386/mm/pageattr.c 2006-08-25 12:39:09.000000000 +0400
86 +++ linux-2.6.10/arch/i386/mm/pageattr.c 2006-10-19 00:43:49.000000000 +0400
89 static spinlock_t cpa_lock = SPIN_LOCK_UNLOCKED;
90 static struct list_head df_list = LIST_HEAD_INIT(df_list);
92 +extern char _stext[], _etext[], _sinittext[], _einittext[];
94 pte_t *lookup_address(unsigned long address)