Module Name: src
Committed By: palle
Date: Mon Dec 17 20:13:46 UTC 2018
Modified Files:
src/sys/arch/sparc64/doc: TODO
Log Message:
sun4v: note what causes the kernel to crash
To generate a diff of this commit:
cvs rdiff -u -r1.27 -r1.28 src/sys/arch/sparc64/doc/TODO
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/doc/TODO
diff -u src/sys/arch/sparc64/doc/TODO:1.27 src/sys/arch/sparc64/doc/TODO:1.28
--- src/sys/arch/sparc64/doc/TODO:1.27 Fri Oct 5 19:53:47 2018
+++ src/sys/arch/sparc64/doc/TODO Mon Dec 17 20:13:46 2018
@@ -1,4 +1,4 @@
- /* $NetBSD: TODO,v 1.27 2018/10/05 19:53:47 palle Exp $ */
+ /* $NetBSD: TODO,v 1.28 2018/12/17 20:13:46 palle Exp $ */
Things to be done:
@@ -12,7 +12,13 @@ sun4u:
sun4v:
- current status: The kernel boots and starts the init process (pid 1)
- which spawns /sbin/sh (pid 2). This is forked as a new /sbin/sh (pid 3) which crashes, probably due to MMU DPROT issues.
+ which spawns /sbin/sh (pid 2). This is forked as a new /sbin/sh (pid 3)
+ which crashes, probably due to MMU DPROT issues.
+ Looks like the user process tries to write to the stack as part of a save
+ instruction since cansave is zero. This causes a DMMU PROT trap (0x6c) which
+ calls sun4v_tl0_dtsb_prot which calls sun4v_datatrap which calls TRAP_SETUP().
+ This macro has code that does a save instruction, again to the user stack,
+ which again causes a MMU DPROT trap...
- 64-bit kernel support
- 32-bit kernel support
- libkvm