Module Name:    src
Committed By:   tsutsui
Date:           Wed May 11 14:17:30 UTC 2011

Modified Files:
        src/sys/arch/x68k/x68k: locore.s

Log Message:
Defer fpu_probe() call until curlwp and related variables are initialized.
Fixes pre-consinit KASSERT() in trap() caused by fnop instruction in
fpu_probe() on machines without FPU, including XM6i.


To generate a diff of this commit:
cvs rdiff -u -r1.101 -r1.102 src/sys/arch/x68k/x68k/locore.s

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/arch/x68k/x68k/locore.s
diff -u src/sys/arch/x68k/x68k/locore.s:1.101 src/sys/arch/x68k/x68k/locore.s:1.102
--- src/sys/arch/x68k/x68k/locore.s:1.101	Tue Feb  8 20:20:26 2011
+++ src/sys/arch/x68k/x68k/locore.s	Wed May 11 14:17:29 2011
@@ -1,4 +1,4 @@
-/*	$NetBSD: locore.s,v 1.101 2011/02/08 20:20:26 rmind Exp $	*/
+/*	$NetBSD: locore.s,v 1.102 2011/05/11 14:17:29 tsutsui Exp $	*/
 
 /*
  * Copyright (c) 1988 University of Utah.
@@ -898,9 +898,6 @@
 	movl	#_C_LABEL(vectab),%d0	| set Vector Base Register
 	movc	%d0,%vbr
 	lea	_ASM_LABEL(tmpstk),%sp	| temporary stack
-/* detect FPU type */
-	jbsr	_C_LABEL(fpu_probe)
-	movl	%d0,_C_LABEL(fputype)
 /* call final pmap setup */
 	jbsr	_C_LABEL(pmap_bootstrap_finalize)
 /* set kernel stack, user SP */
@@ -909,6 +906,9 @@
 	movl	#USRSTACK-4,%a2
 	movl	%a2,%usp		| init user SP
 
+/* detect FPU type */
+	jbsr	_C_LABEL(fpu_probe)
+	movl	%d0,_C_LABEL(fputype)
 	tstl	_C_LABEL(fputype)	| Have an FPU?
 	jeq	Lenab2			| No, skip.
 	clrl	%a1@(PCB_FPCTX)		| ensure null FP context

Reply via email to