Module Name: src Committed By: nakayama Date: Mon Mar 2 13:48:00 UTC 2015
Modified Files: src/sys/arch/sparc64/sparc64: locore.s Log Message: Use panic stack temporarily for calling prom_printf in a trap handler. It seems that openfirmware cannot handle over 4GB pointers, and stack pointers may point to over 4GB since VA layout was rearranged by rev 1.33 of vmparam.h. Therefore, use panic stack to avoid panicking in OF_write used by prom_printf. To generate a diff of this commit: cvs rdiff -u -r1.378 -r1.379 src/sys/arch/sparc64/sparc64/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/sparc64/sparc64/locore.s diff -u src/sys/arch/sparc64/sparc64/locore.s:1.378 src/sys/arch/sparc64/sparc64/locore.s:1.379 --- src/sys/arch/sparc64/sparc64/locore.s:1.378 Mon Feb 23 12:36:58 2015 +++ src/sys/arch/sparc64/sparc64/locore.s Mon Mar 2 13:48:00 2015 @@ -1,4 +1,4 @@ -/* $NetBSD: locore.s,v 1.378 2015/02/23 12:36:58 palle Exp $ */ +/* $NetBSD: locore.s,v 1.379 2015/03/02 13:48:00 nakayama Exp $ */ /* * Copyright (c) 2006-2010 Matthew R. Green @@ -3547,7 +3547,8 @@ ret_from_intr_vector: nop #endif #if 1 - STACKFRAME(-CC64FSZ) ! Get a clean register window + set PANICSTACK-STKB, %g1 ! Use panic stack temporarily + save %g1, -CC64FSZ, %sp ! Get a clean register window LOAD_ASCIZ(%o0, "interrupt_vector: spurious vector %lx at pil %d\r\n") mov %g7, %o1 GLOBTOLOC