From: Roland Dreier <roland@topspin.com>

Looks like arch/i386/kernel/doublefault.c is one place in the code that
hardcodes the assumption that PAGE_OFFSET == 0xC0000000.  Here's a patch
that fixes that.

Signed-off-by: Roland Dreier <roland@topspin.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
---

 25-akpm/arch/i386/kernel/doublefault.c |    2 +-
 1 files changed, 1 insertion(+), 1 deletion(-)

diff -puN arch/i386/kernel/doublefault.c~ptr_ok-cleanup arch/i386/kernel/doublefault.c
--- 25/arch/i386/kernel/doublefault.c~ptr_ok-cleanup	Fri Aug  6 15:06:18 2004
+++ 25-akpm/arch/i386/kernel/doublefault.c	Fri Aug  6 15:06:18 2004
@@ -13,7 +13,7 @@
 static unsigned long doublefault_stack[DOUBLEFAULT_STACKSIZE];
 #define STACK_START (unsigned long)(doublefault_stack+DOUBLEFAULT_STACKSIZE)
 
-#define ptr_ok(x) ((x) > 0xc0000000 && (x) < 0xc1000000)
+#define ptr_ok(x) ((x) > PAGE_OFFSET && (x) < PAGE_OFFSET + 0x1000000)
 
 static void doublefault_fn(void)
 {
_