Date: Tue, 13 Jul 2004 00:03:39 -0700 From: Kris Kennaway <kris@obsecurity.org> To: Robert Watson <rwatson@freeBSD.org> Cc: Kris Kennaway <kris@obsecurity.org> Subject: Re: panic: mutex Giant not owned at ../../../kern/vfs_subr.c:1365 Message-ID: <20040713070339.GA10714@xor.obsecurity.org> In-Reply-To: <Pine.NEB.3.96L.1040712095715.9897A-100000@fledge.watson.org> References: <20040712054927.GA33425@xor.obsecurity.org> <Pine.NEB.3.96L.1040712095715.9897A-100000@fledge.watson.org>
next in thread | previous in thread | raw e-mail | index | archive | help
--cWoXeonUoKmBZSoM Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Mon, Jul 12, 2004 at 10:01:04AM -0400, Robert Watson wrote: >=20 > On Sun, 11 Jul 2004, Kris Kennaway wrote: >=20 > > Running an up-to-date CVS kernel without debug.mpsafenet enabled >=20 > Could you confirm the following: >=20 > - You're running uipc_usrreq.c:1.133 > - You're running with INVARIANTS compile into the kernel >=20 > Each call to namei() in the current revision uipc_usrreq.c is preceeded by > an assertion of Giant or an acquisition of Giant. This suggests: >=20 > - You're not running uipc_usrreq.c:1.133 and therefore don't have all the > necessary changes. >=20 > - The assertion is violated, but you're not running with INVARIANTS (which > seems unlikely given that you later trip another assertion that > presumably also requires INVARIANTS :-).=20 >=20 > - Something else in the stack of functions there is dropping Giant and > failing to re-acquire it in time. In case anyone else is following, door #3 seems to hold the prize. Adding GIANT_REQUIRED shows that namei() is called with Giant held, but something higher up is losing it. The trigger seems to be syslogd during boot, fwiw. > > Debugger(c0766179,c07d1e80,2d9,c0765560,100) at Debugger+0x54 > > __panic(c0765560,2d9,c07656c8,c0765803,c076e07d) at __panic+0xf5 > > _mtx_assert(c07d09e0,1,c076e07d,555,c68544ec) at _mtx_assert+0x11c > > gbincore(c6889514,0,0,985,c07d5980) at gbincore+0x36 > > getblk(c6889514,0,0,800,0) at getblk+0xf8 > > breadn(c6889514,0,0,800,0) at breadn+0x52 > > bread(c6889514,0,0,800,0) at bread+0x4c > > ffs_blkatoff(c6889514,0,0,0,e0f87998) at ffs_blkatoff+0x105 > > ufs_lookup(e0f87a50,e0f87a8c,c05c77e1,e0f87a50,e0f87bc0) at ufs_lookup+= 0x270 > > ufs_vnoperate(e0f87a50,e0f87bc0,e0f87bd4,c076e07d,c61d62a0) at ufs_vnop= erate+0x18 > > vfs_cache_lookup(e0f87ad0,e0f87aec,c05cca32,e0f87ad0,c61d62a0) at vfs_c= ache_lookup+0x301 > > ufs_vnoperate(e0f87ad0,c61d62a0,0,c61d62a0,c61d62a0) at ufs_vnoperate+0= x18 > > lookup(e0f87bac,0,c076dac5,a2,c61d62a0) at lookup+0x312 > > namei(e0f87bac,c62088b2,d,c62088c0,0) at namei+0x27e > > unp_bind(c6a09000,c62088b0,c61d62a0,e0f87ca0,c05b5e23) at unp_bind+0xb1 > > uipc_bind(c6427a50,c62088b0,c61d62a0,e0f87cc8,c05ba0e7) at uipc_bind+0x= 2b > > sobind(c6427a50,c62088b0,c61d62a0,0,c6427a50) at sobind+0x23 > > kern_bind(c61d62a0,3,c62088b0,c62088b0,0) at kern_bind+0x87 > > bind(c61d62a0,e0f87d14,c,434,3) at bind+0x43 > > syscall(2f,2f,2f,bfbfee10,0) at syscall+0x2a0 > > Xint0x80_syscall() at Xint0x80_syscall+0x1f > > --- syscall (104, FreeBSD ELF32, bind), eip =3D 0x280d21ff, esp =3D 0xb= fbfe89c, ebp =3D 0xbfbfee98 --- Kris --cWoXeonUoKmBZSoM Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.4 (FreeBSD) iD8DBQFA84lKWry0BWjoQKURAmEiAKC0zbNz9EWQmVQN1DOSEkMnXGxJFwCeOSKf Vmr6LA70D2wmEAqLX3e8mD4= =Xyz7 -----END PGP SIGNATURE----- --cWoXeonUoKmBZSoM--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20040713070339.GA10714>