From owner-freebsd-current@FreeBSD.ORG Fri Jul 27 20:56:35 2007 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 0F43516A41B for ; Fri, 27 Jul 2007 20:56:35 +0000 (UTC) (envelope-from kris@obsecurity.org) Received: from elvis.mu.org (elvis.mu.org [192.203.228.196]) by mx1.freebsd.org (Postfix) with ESMTP id E25DB13C45A for ; Fri, 27 Jul 2007 20:56:34 +0000 (UTC) (envelope-from kris@obsecurity.org) Received: from rot26.obsecurity.org (elvis.mu.org [192.203.228.196]) by elvis.mu.org (Postfix) with ESMTP id CDF271A4D7C; Fri, 27 Jul 2007 13:56:28 -0700 (PDT) Received: by rot26.obsecurity.org (Postfix, from userid 1001) id 517F8BE43; Fri, 27 Jul 2007 16:56:34 -0400 (EDT) Date: Fri, 27 Jul 2007 16:56:34 -0400 From: Kris Kennaway To: Dan Nelson Message-ID: <20070727205634.GA49495@rot26.obsecurity.org> References: <200707210657.11159.thierry@herbelot.com> <20070727200826.GA53337@dan.emsphone.com> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="gKMricLos+KVdGMg" Content-Disposition: inline In-Reply-To: <20070727200826.GA53337@dan.emsphone.com> User-Agent: Mutt/1.4.2.3i Cc: freebsd-current@freebsd.org, Thierry Herbelot Subject: Re: ZFS panic: System call unlink returning with 1 locks held X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 27 Jul 2007 20:56:35 -0000 --gKMricLos+KVdGMg Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Fri, Jul 27, 2007 at 03:08:26PM -0500, Dan Nelson wrote: > In the last episode (Jul 21), Thierry Herbelot said: > > with a recent -current -built yesterday), I just got a panic while=20 > > rebuilding -j4 the world and portupgrading firefox. > > > > the machine is pretty much memory limited (only 320 MB of RAM), with > > two CPUs, running a straight GENERIC kernel, including WITNESS and > > INVARIANTS. > [..] > > the panic message is : > >=20 > > panic: System call unlink returning with 1 locks held > > cpuid =3D 0 > > KDB: enter: panic > > [thread pid 42789 tid 100102 ] > > Stopped at kdb_enter+0x32: leave > > db> where > > Tracing pid 42789 tid 100102 td 0xc2ce3200 > > kdb_enter(c0a92bc5,0,c0ac0a31,d5457c8c,0,...) at kdb_enter+0x32 > > panic(c0ac0a31,c0a98f5c,1,c0a98f5c,c0b3f030,...) at panic+0x124 > > syscall(d5457d38) at syscall+0x46e > > Xint0x80_syscall() at Xint0x80_syscall+0x20 >=20 > I've been seeing this, as late as on a Jul 24 kernel. Happened once > during the cleandir stage of a buildworld, and few more times when the > system was relatively idle (although it is an mrtg server so lots of > files are constantly created and rm'd). My system is i386 with 1GB of > RAM, has a ZFS root, and is SMP. I've also gotten a similar "System > call rename returning with 1 locks held" panic. Is there any way to > find out what lock is being held? I've got a couple crashdumps. It appears to be a leak in the lock counters somewhere, perhaps related to recursively acquired rwlocks (e.g. double increment, single free). I eventually disabled the check because even adding extensive extra debugging there was no evidence of an actual lock being leaked anywhere. Kris --gKMricLos+KVdGMg Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.4 (FreeBSD) iD8DBQFGqlwCWry0BWjoQKURAiIJAKDyT8VaNjZoENsFfDDmB5knSDnJzQCePQG0 xdep0ohnwV9NGZ13eqX3OlU= =kjz7 -----END PGP SIGNATURE----- --gKMricLos+KVdGMg--