Module Name:    src
Committed By:   palle
Date:           Sat Feb 17 19:36:07 UTC 2024

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

Log Message:
Ensure that the size of the stack is properly specified (2*USPACE) so it 
matches the allocation of stack pages done in pmap_bootstrap(). If this is not 
properly in sync, then the stack pointer may end up in the redzone right before 
the stack causing mmu faults. This issue has been observed on a T2000 (sun4v) 
system while probing the devices (pci/ebus/com) during bootstrap


To generate a diff of this commit:
cvs rdiff -u -r1.433 -r1.434 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.433 src/sys/arch/sparc64/sparc64/locore.s:1.434
--- src/sys/arch/sparc64/sparc64/locore.s:1.433	Wed Mar  1 08:18:39 2023
+++ src/sys/arch/sparc64/sparc64/locore.s	Sat Feb 17 19:36:07 2024
@@ -1,4 +1,4 @@
-/*	$NetBSD: locore.s,v 1.433 2023/03/01 08:18:39 riastradh Exp $	*/
+/*	$NetBSD: locore.s,v 1.434 2024/02/17 19:36:07 palle Exp $	*/
 
 /*
  * Copyright (c) 2006-2010 Matthew R. Green
@@ -5471,7 +5471,7 @@ ENTRY_NOPROFILE(cpu_initialize)	/* for c
 	!! and already accessible here)
 	flushw
 	LDPTR	[%l7 + CI_CPCB], %l0		! load PCB/uarea pointer
-	set	USPACE - TF_SIZE - CC64FSZ, %l1
+	set	2*USPACE - TF_SIZE - CC64FSZ, %l1
  	add	%l1, %l0, %l0
 #ifdef _LP64
 	andn	%l0, 0x0f, %l0			! Needs to be 16-byte aligned

Reply via email to