Re: [patch] ar.fpsr not set on MCA/INIT kernel entry

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Keith Owens wrote:
> Russ Anderson (on Mon, 18 Sep 2006 16:18:28 -0500 (CDT)) wrote:
> >[patch] ar.fpsr not set on MCA/INIT kernel entry
> >Index: test/arch/ia64/kernel/mca_asm.S
> >===================================================================
> >--- test.orig/arch/ia64/kernel/mca_asm.S	2006-09-18 16:10:06.058062990 -0500
> >+++ test/arch/ia64/kernel/mca_asm.S	2006-09-18 16:10:29.628971888 -0500
> >@@ -1063,7 +1063,9 @@ ia64_set_kernel_registers:
> > 	;;
> > 	mov IA64_KR(CURRENT_STACK)=r16
> > 	or r21=r20,r21				// construct PA | page properties
> >+	movl r17=FPSR_DEFAULT
> > 	;;
> >+	mov.m ar.fpsr=r17			// set ar.fpsr to kernel default value
> > 	mov cr.itir=r18
> > 	mov cr.ifa=r13
> > 	mov r20=IA64_TR_CURRENT_STACK
> 
> Any particular reason to place those instructions in the middle of the
> code that wires IA64_TR_CURRENT_STACK?  I tried to keep the tr code as
> standard as possible, to make it easier to change in future.  This code
> is not performance sensitive, readability counts more than a couple of
> unused slots here.

Those lines can be shifted up or down.   
Does this look better?

---
 arch/ia64/kernel/mca_asm.S |    4 ++++
 1 file changed, 4 insertions(+)

Index: test/arch/ia64/kernel/mca_asm.S
===================================================================
--- test.orig/arch/ia64/kernel/mca_asm.S	2006-09-18 16:10:06.058062990 -0500
+++ test/arch/ia64/kernel/mca_asm.S	2006-09-18 18:35:41.232092232 -0500
@@ -1067,6 +1067,10 @@ ia64_set_kernel_registers:
 	mov cr.itir=r18
 	mov cr.ifa=r13
 	mov r20=IA64_TR_CURRENT_STACK
+
+	movl r17=FPSR_DEFAULT
+	;;
+	mov.m ar.fpsr=r17			// set ar.fpsr to kernel default value
 	;;
 	itr.d dtr[r20]=r21
 	;;
-- 
Russ Anderson, OS RAS/Partitioning Project Lead  
SGI - Silicon Graphics Inc          rja@xxxxxxx
-
To unsubscribe from this list: send the line "unsubscribe linux-ia64" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel]     [Sparc Linux]     [DCCP]     [Linux ARM]     [Yosemite News]     [Linux SCSI]     [Linux x86_64]     [Linux for Ham Radio]

  Powered by Linux