Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 18 Dec 2007 10:20:21 -1000 (HST)
From:      Jeff Roberson <jroberson@chesapeake.net>
To:        Ed Maste <emaste@freebsd.org>
Cc:        bzeeb+freebsd+lor@zabbadoz.net, freebsd-current@freebsd.org
Subject:   Re: LOR kqueue / sleep mtxpool for LOR list
Message-ID:  <20071218101806.J899@desktop>
In-Reply-To: <20071218194312.GB40055@sandvine.com>
References:  <20071218194312.GB40055@sandvine.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, 18 Dec 2007, Ed Maste wrote:

> I just saw this LOR during startup of an application while testing
> 8-CURRENT on a dev box.  I've done no investigation yet.
>
> FreeBSD TPC-D13-08.phaedrus 8.0-CURRENT FreeBSD 8.0-CURRENT #0: Mon Dec 17 16:27:54 EST 2007     emaste@bsd-build3.phaedrus:/d2/emaste/HEAD/obj/d2/emaste/HEAD/src/sys/GENERIC  i386
>
> lock order reversal:
> 1st 0xc42b7580 kqueue (kqueue) @ /d2/emaste/HEAD/src/sys/kern/kern_event.c:1397
> 2nd 0xc3ece8e0 sleep mtxpool (sleep mtxpool) @ /d2/emaste/HEAD/src/sys/kern/sys_generic.c:1255
> KDB: stack backtrace:
> db_trace_self_wrapper(c0b08871,e683aaa4,c079cafe,c0b0ade3,c3ece8e0,...) at db_trace_self_wrapper+0x26
> kdb_backtrace(c0b0ade3,c3ece8e0,c0b043d7,c0b043d7,c0b0b09a,...) at kdb_backtrace+0x29
> witness_checkorder(c3ece8e0,9,c0b0b09a,4e7,c42b7580,...) at witness_checkorder+0x6de
> _mtx_lock_flags(c3ece8e0,0,c0b0b09a,4e7,40,...) at _mtx_lock_flags+0xbc
> selrecord(c4474220,c42b75ac,c0b01a8d,575,c42b7580,...) at selrecord+0x9d
> kqueue_poll(c4341cf0,40,c46f4000,c4474220,e683ab74,...) at kqueue_poll+0x65
> poll(c4474220,e683acfc,c,e683ad38,c0bb84b8,...) at poll+0x2cc
> syscall(e683ad38) at syscall+0x2b3
> Xint0x80_syscall() at Xint0x80_syscall+0x20
> --- syscall (209, FreeBSD ELF32, poll), eip = 0x287451db, esp = 0x8672f3c, ebp = 0x8672f98 ---
>

Thanks, this is interesting.  The mtxpool should always be the leaf.  The 
opposite order is the bug.  Can you add them to the static order list and 
tell me where the reverse order is observed?

Thanks,
Jeff


> -Ed
> _______________________________________________
> freebsd-current@freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-current
> To unsubscribe, send any mail to "freebsd-current-unsubscribe@freebsd.org"
>



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20071218101806.J899>