Bug 137800 - [panic] -CURRENT on sparc64/ia64 immediate "panic: mtx_init: mtx_lock not aligned for turnstile chain: 0xc06489f8"
Summary: [panic] -CURRENT on sparc64/ia64 immediate "panic: mtx_init: mtx_lock not ali...
Status: Closed FIXED
Alias: None
Product: Base System
Classification: Unclassified
Component: kern (show other bugs)
Version: Unspecified
Hardware: Any Any
: Normal Affects Only Me
Assignee: attilio
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-08-15 17:10 UTC by Nathaniel Filardo
Modified: 2010-08-09 13:37 UTC (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Nathaniel Filardo 2009-08-15 17:10:01 UTC
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.
Comment 1 Gavin Atkinson freebsd_committer freebsd_triage 2009-08-15 21:49:56 UTC
Responsible Changed
From-To: freebsd-bugs->freebsd-sparc64

I suspect that this is some MD problem on sparc64, and not directly 
related to the commit that triggers the problem.
Comment 2 Bjoern A. Zeeb freebsd_committer freebsd_triage 2009-08-15 22:46:12 UTC
Responsible Changed
From-To: freebsd-sparc64->bz

Mine. I got input form kib on why it's an issue for sparc64 and I think 
ia64 might have the same problem.  We'll either disable the check or 
find something better that actually works on all platforms.
Comment 3 Bjoern A. Zeeb freebsd_committer freebsd_triage 2009-08-16 18:21:11 UTC
Responsible Changed
From-To: bz->attilio

Thanks for handling this.
Comment 4 attilio freebsd_committer freebsd_triage 2010-08-09 13:34:30 UTC
State Changed
From-To: open->closed

This has been fixed with r196334.