Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 03 May 2011 22:59:14 -0700
From:      Kirk McKusick <mckusick@mckusick.com>
To:        Garrett Cooper <yanegomi@gmail.com>
Cc:        FreeBSD Current <freebsd-current@freebsd.org>
Subject:   Re: Nasty non-recursive lockmgr panic on softdep only enabled UFS partition when filesystem full 
Message-ID:  <201105040559.p445xEJ5024585@chez.mckusick.com>
In-Reply-To: <BANLkTik4=O_1PWB2GzGzY=m51dG-Kbhe%2BQ@mail.gmail.com> 

next in thread | previous in thread | raw e-mail | index | archive | help
> Date: Tue, 3 May 2011 22:40:26 -0700
> Subject: Nasty non-recursive lockmgr panic on softdep only enabled UFS
>  partition when filesystem full
> From: Garrett Cooper <yanegomi@gmail.com>
> To: Jeff Roberson <jeff@freebsd.org>,
>         Marshall Kirk McKusick <mckusick@mckusick.com>
> Cc: FreeBSD Current <freebsd-current@freebsd.org>
> 
> Hi Jeff and Dr. McKusick,
>     Ran into this panic when /usr ran out of space doing a make
> universe on amd64/r221219 (it took ~15 minutes for the panic to occur
> after the filesystem ran out of space -- wasn't quite sure what it was
> doing at the time):
> 
> ...
> 
>     Let me know what other commands you would like for me to run in kgdb.
> Thanks,
> -Garrett

You did not indicate whether you are running an 8.X system or a 9-current
system. It would be helpful to know that.

Jeff thinks that there may be a potential race in the locking code for
softdep_request_cleanup. If so, this patch for 9-current should fix it:

Index: ffs_softdep.c
===================================================================
--- ffs_softdep.c	(revision 221385)
+++ ffs_softdep.c	(working copy)
@@ -11380,7 +11380,8 @@
 				continue;
 			}
 			MNT_IUNLOCK(mp);
-			if (vget(lvp, LK_EXCLUSIVE | LK_INTERLOCK, curthread)) {
+			if (vget(lvp, LK_EXCLUSIVE | LK_NOWAIT | LK_INTERLOCK,
+			    curthread)) {
 				MNT_ILOCK(mp);
 				continue;
 			}

If you are running an 8.X system, hopefully you will be able to apply it.

	Kirk McKusick



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