Date: Tue, 17 Dec 2002 01:02:19 -0500 From: Brent Verner <brent@rcfile.org> To: Alfred Perlstein <alfred@FreeBSD.ORG> Cc: Lars Eggert <larse@ISI.EDU>, Kris Kennaway <kris@obsecurity.org>, current@FreeBSD.ORG, tanimura@FreeBSD.ORG Subject: Re: Lock order reversals in sys_pipe.c and kern_sig.c Message-ID: <20021217060219.GA16356@rcfile.org> In-Reply-To: <20021204231245.GH58155@elvis.mu.org> References: <20021118190819.GK12906@rot13.obsecurity.org> <20021118193901.GA16066@elvis.mu.org> <3DEE8996.70602@isi.edu> <20021204231245.GH58155@elvis.mu.org>
next in thread | previous in thread | raw e-mail | index | archive | help
[2002-12-04 15:12] Alfred Perlstein said: | * Lars Eggert <larse@ISI.EDU> [021204 15:04] wrote: | > | > FYI, just got a similar one yesterday on an up-to-date -current: | > | > lock order reversal | > 1st 0xc784d700 pipe mutex (pipe mutex) @ /usr/src/sys/kern/sys_pipe.c:465 | > 2nd 0xc0513840 sigio lock (sigio lock) @ /usr/src/sys/kern/kern_sig.c:2225 | | Since no one has given me the traceback based on the patch I posted | earlier I have ceased to care about the "problem". If someone | seriously cares they will run with my patch and post a backtrace. Running java _always_ causes one lock order warning -- and only one, AFAICT, after having the system up for a few days; successive execs of the java binary do not cause the warning. thanks brent brent@scratch$ uname -a FreeBSD scratch.rcfile.org 5.0-CURRENT FreeBSD 5.0-CURRENT #15: Mon Dec 16 23:22:55 EST 2002 root@scratch.rcfile.org:/usr/obj/usr/src/sys/SCRATCH i386 brent@scratch$ javavm -version lock order reversal 1st 0xc504b280 pipe mutex (pipe mutex) @ /usr/src/sys/kern/sys_pipe.c:465 2nd 0xc051d660 sigio lock (sigio lock) @ /usr/src/sys/kern/kern_sig.c:2225 Debugger("witness_lock") Stopped at Debugger+0x54: xchgl %ebx,in_Debugger.0 db> trace Debugger(c0494b35,c051d660,c04cb89d,c04cb89d,c04ce124) at Debugger+0x54 witness_lock(c051d660,8,c04ce124,8b1,c504b280) at witness_lock+0x667 _mtx_lock_flags(c051d660,0,c04ce124,8b1,c4f29d10) at _mtx_lock_flags+0xb1 pgsigio(c4f29da8,17,0,1ad,c0598898) at pgsigio+0x30 pipe_read(c4f21690,e0297c7c,c52a7200,0,c4de0c40) at pipe_read+0x596 dofileread(c4de0c40,c4f21690,3,bfbff0a7,1) at dofileread+0xd2 read(c4de0c40,e0297d10,c04e77be,407,3) at read+0x6b syscall(2f,2f,2f,281d9c02,bfbff0c0) at syscall+0x28e Xint0x80_syscall() at Xint0x80_syscall+0x1d --- syscall (3, FreeBSD ELF32, read), eip = 0x280c6993, esp = 0xbfbff08c, ebp = 0xbfbff0e8 --- db> continue java version "1.3.1-p7" Java(TM) 2 Runtime Environment, Standard Edition (build 1.3.1-p7-root-021107-04:35) Classic VM (build 1.3.1-p7-root-021107-04:35, green threads, nojit) brent@scratch$ -- "Develop your talent, man, and leave the world something. Records are really gifts from people. To think that an artist would love you enough to share his music with anyone is a beautiful thing." -- Duane Allman To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20021217060219.GA16356>