kern/137800: -CURRENT on sparc64 immediate "panic: mtx_init:
mtx_lock not aligned for turnstile chain: 0xc06489f8"
Nathaniel Filardo
nwf at cs.jhu.edu
Sat Aug 15 16:10:02 UTC 2009
>Number: 137800
>Category: kern
>Synopsis: -CURRENT on sparc64 immediate "panic: mtx_init: mtx_lock not aligned for turnstile chain: 0xc06489f8"
>Confidential: no
>Severity: serious
>Priority: low
>Responsible: freebsd-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: sw-bug
>Submitter-Id: current-users
>Arrival-Date: Sat Aug 15 16:10:01 UTC 2009
>Closed-Date:
>Last-Modified:
>Originator: Nathaniel Filardo
>Release: -CURRENT
>Organization:
>Environment:
FreeBSD hydra.priv.oc.ietfng.org 8.0-CURRENT-200906 FreeBSD 8.0-CURRENT-200906 #0: Thu Jun 11 15:23:43 UTC 2009 root at araz.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC sparc64
>Description:
SVN r196226 added ASSERT_ATOMIC_LOAD to check that values could be atomically loaded. On sparc64, _ALIGN() masks off 0xF but the compiler seems to think that the alignment requirement is only 0x7 as printing "&( ((struct foo *)(NULL))->...)" for each of a,b,c,d,e,f in "struct foo { long a; char b; long c; void *d; char e; void *f; };" seems to produces "0 8 16 24 32 40"
I don't know what the right fix is or even which one is in error. Thoughts?
>How-To-Repeat:
Build a kernel on sparc64 later than r196226. It is unclear to me if other details of kernel configuration matter.
>Fix:
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-bugs
mailing list