Re: panic at turnstile_wait (Re: panic at sched_add_internal)

From: Norikatsu Shigemura <nork_at_FreeBSD.org>
Date: Tue, 20 Jul 2004 12:54:57 +0900
On Wed, 30 Jun 2004 11:24:22 -0400
John Baldwin <jhb_at_FreeBSD.org> wrote:
> > > - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
> > > - - [thread 100124]
> > > Stopped at      turnstile_wait+0x17a:   movl    %eax,0x10(%edx)
> > > db> trace
> > > turnstile_wait(c301e340,c0877f40,c36e4420,c0877f40,f9) at
> > > turnstile_wait+0x17a _mtx_lock_sleep(c0877f40,0,c07bd610,f9,0) at
> > > _mtx_lock_sleep+0x125 _mtx_lock_flags(c0877f40,0,c07bd610,f9,0) at
> > > _mtx_lock_flags+0x64
> > [...]
> > > -->		LIST_INSERT_HEAD(&ts->ts_free, td->td_turnstile, ts_hash);
> > > 		MPASS(owner == ts->ts_owner);
> > > 	}
> > > 	td->td_turnstile = NULL;
> > > [...]
> > > - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
> > > - -
> > 	Same panic has happend at same place on new current (+1day).
> Do you have INVARIANTS turned on?  Also, can you capture the actual panic 

	Sorry, I didn't turned on INVARIANTS.  So I turned on INVARIANTS
	and INVARIANT_SUPPORT.  And I confirmed this behavior on more newer
	current.

> message?  If you do have INVARIANTS on, then it seems that pointers are 
> magically changing to NULL after the assertion check.  I'd be worried about 
> bad memory.

	My machine was freezed...  I cannot get more than following 
	message:-(.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
panic: kse/thread mismatch
cpuid = 1;
KDB: enter: panic
[thread 100124]
Stopped at      kdb_enter+0x30: movl    %ebp,%esp
db> trace
kdb_enter(c072a43e,1,c072aa83,e3de1bdc,100) at kdb_enter+0x30
panic(c072aa83,1,c072aa97,c3317420,c2c1ea20) at panic+0x156
choosethread(c2c1ea20,c2c1ea20,c072b93b,46e,c07d0cc0) at choosethread+0x50
sched_switch(c3317420,0,c072ad0c,123,6da69d09) at sched_switch+0x109
mi_switch(1,0,c072d2e1,20b,c07db4e8) at mi_switch+0x2af
turnstile_wait(0,c07d0d00,c2c1db00,20e,c3317420) at turnstile_wait+0x351
_mtx_lock_sleep(c07d0d00,0,c074b796,3df,0) at _mtx_lock_sleep+0x195
_mtx_lock_flags(c07d0d00,0,c074b796,3df,4) at _mtx_lock_flags+0xb2
syscall(2f,2f,2f,8076500,8076500) at syscall+0x1bd
Xint0x80_syscall() at Xint0x80_syscall+0x1f
--- syscall (196, FreeBSD ELF32, getdirentries), eip = 0x6822e9df, esp = 0xbfadce94, ebp = 0xbfadceb0 ---
db> gdb
Step to enter the remote GDB backend.
db> s
 [freeze]
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Received on Tue Jul 20 2004 - 01:54:59 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:38:02 UTC