[patch 2.6.9-test] Remove remnants of ar.k[56] being physical

From: Keith Owens <kaos_at_sgi.com>
Date: 2004-09-16 19:12:05
Corrected patch, the minstate stack is still physical.

ar.k[56] used to contain physical addresses but now contain virtual
addresses.  There are code remnants which still believe that they are
physical and "convert" ar.k[56] to virtual.  This breaks when current
is not in region 7 (e.g. the idle task on cpu 0).

Signed-off-by: Keith Owens <kaos@sgi.com>

Index: linux/arch/ia64/kernel/minstate.h
===================================================================
--- linux.orig/arch/ia64/kernel/minstate.h	Thu Sep 16 18:43:18 2004
+++ linux/arch/ia64/kernel/minstate.h	Thu Sep 16 18:44:17 2004
@@ -54,8 +54,7 @@
 (pUStk)	mov ar.rsc=0x3;		/* set eager mode, pl 0, little-endian, loadrs=0 */		\
 
 #define MINSTATE_END_SAVE_MIN_PHYS								\
-	or r12=r12,r14;		/* make sp a kernel virtual address */				\
-	or r13=r13,r14;		/* make `current' a kernel virtual address */			\
+	dep r12=-1,r12,61,3;		/* make sp a kernel virtual address */			\
 	;;
 
 #ifdef MINSTATE_VIRT
@@ -172,7 +171,6 @@
 	;;											\
 .mem.offset 0,0; st8.spill [r16]=r15,16;							\
 .mem.offset 8,0; st8.spill [r17]=r14,16;							\
-	dep r14=-1,r0,61,3;									\
 	;;											\
 .mem.offset 0,0; st8.spill [r16]=r2,16;								\
 .mem.offset 8,0; st8.spill [r17]=r3,16;								\
Index: linux/include/asm-ia64/mca_asm.h
===================================================================
--- linux.orig/include/asm-ia64/mca_asm.h	Thu Sep 16 18:43:18 2004
+++ linux/include/asm-ia64/mca_asm.h	Thu Sep 16 18:44:11 2004
@@ -162,9 +162,6 @@
 	;;							\
 	srlz.d;							\
 	mov	r13 = ar.k6;					\
-	;;							\
-	DATA_PA_TO_VA(r13,temp1);				\
-	;;							\
 	mov	temp2 = ar.bspstore;				\
 	;;							\
 	DATA_PA_TO_VA(temp2,temp1);				\

-
To unsubscribe from this list: send the line "unsubscribe linux-ia64" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Received on Thu Sep 16 05:14:03 2004

This archive was generated by hypermail 2.1.8 : 2005-08-02 09:20:30 EST