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