From: Matt Porter <mporter@kernel.crashing.org>

This patch is virtually identical to my previous 44x one.  It removes
0x8000'0000 TASK_SIZE hardcoded assumption from head_4xx.S.

Signed-off-by: Eugene Surovegin <ebs@ebshome.net>
Signed-off-by: Matt Porter <mporter@kernel.crashing.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
---

 arch/ppc/kernel/head_4xx.S |   15 +++++++++------
 1 files changed, 9 insertions(+), 6 deletions(-)

diff -puN arch/ppc/kernel/head_4xx.S~ppc32-fix-config_task_size-handling-on-40x arch/ppc/kernel/head_4xx.S
--- 25/arch/ppc/kernel/head_4xx.S~ppc32-fix-config_task_size-handling-on-40x	Tue Jun  7 15:03:16 2005
+++ 25-akpm/arch/ppc/kernel/head_4xx.S	Tue Jun  7 15:03:16 2005
@@ -291,8 +291,9 @@ label:
 	/* If we are faulting a kernel address, we have to use the
 	 * kernel page tables.
 	 */
-	andis.	r11, r10, 0x8000
-	beq	3f
+	lis	r11, TASK_SIZE@h
+	cmplw	r10, r11
+	blt+	3f
 	lis	r11, swapper_pg_dir@h
 	ori	r11, r11, swapper_pg_dir@l
 	li	r9, 0
@@ -479,8 +480,9 @@ label:
 	/* If we are faulting a kernel address, we have to use the
 	 * kernel page tables.
 	 */
-	andis.	r11, r10, 0x8000
-	beq	3f
+	lis	r11, TASK_SIZE@h
+	cmplw	r10, r11
+	blt+	3f
 	lis	r11, swapper_pg_dir@h
 	ori	r11, r11, swapper_pg_dir@l
 	li	r9, 0
@@ -578,8 +580,9 @@ label:
 	/* If we are faulting a kernel address, we have to use the
 	 * kernel page tables.
 	 */
-	andis.	r11, r10, 0x8000
-	beq	3f
+	lis	r11, TASK_SIZE@h
+	cmplw	r10, r11
+	blt+	3f
 	lis	r11, swapper_pg_dir@h
 	ori	r11, r11, swapper_pg_dir@l
 	li	r9, 0
_