linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Chris Wright <chrisw@osdl.org>
To: linux-kernel@vger.kernel.org, linux-xfs@oss.sgi.com,
	Eirik Thorsnes <eithor@ii.uib.no>,
	smfrench@austin.rr.com, trond.myklebust@fys.uio.no,
	matthew@wil.cx
Subject: Re: panic - Attempting to free lock with active block list
Date: Wed, 5 Jan 2005 12:32:07 -0800	[thread overview]
Message-ID: <20050105123207.J469@build.pdx.osdl.net> (raw)
In-Reply-To: <20050105195736.GA26989@ii.uib.no>; from Jan-Frode.Myklebust@bccs.uib.no on Wed, Jan 05, 2005 at 08:57:36PM +0100

* Jan-Frode Myklebust (Jan-Frode.Myklebust@bccs.uib.no) wrote:
> We have a couple of mail-servers running first 2.6.9-1.681_FC3smp
> and was later upgraded to the Fedora test kernel 2.6.10-1.727_FC3smp
> which I think is pretty plain 2.6.10 + ac2. But they both keep
> crashing with the message:
> 
>        Kernel panic - not syncing: Attempting to free lock with active block list
> 
> Any ideas how to attack this?
> 
> We're running Centos 3.3, ext3 for root-disks, ext2 on /boot,
> XFS for mail-spools, lots of nfs-mounted directories..

It seems likely it's nfs related in this case since it stresses the
fs/locks code differently than local filesystems.  I recall Steve French
reporting similar issue with cifs last month.

Message-Id: <1102097193.3540.4.camel@smfhome1.smfdom>

Are those three cases really panic-worthy?  Could we change to BUG_ON()
and try and get some useful debugging?  Trond, Willy, any ideas?

thanks,
-chris

===== fs/locks.c 1.76 vs edited =====
--- 1.76/fs/locks.c	2005-01-04 18:48:28 -08:00
+++ edited/fs/locks.c	2005-01-05 12:31:34 -08:00
@@ -159,14 +159,20 @@ static inline void locks_free_lock(struc
 		BUG();
 		return;
 	}
-	if (waitqueue_active(&fl->fl_wait))
-		panic("Attempting to free lock with active wait queue");
+	if (waitqueue_active(&fl->fl_wait)) {
+		printk("Attempting to free lock with active wait queue");
+		BUG();
+	}
 
-	if (!list_empty(&fl->fl_block))
-		panic("Attempting to free lock with active block list");
+	if (!list_empty(&fl->fl_block)) {
+		printk("Attempting to free lock with active block list");
+		BUG();
+	}
 
-	if (!list_empty(&fl->fl_link))
-		panic("Attempting to free lock on active lock list");
+	if (!list_empty(&fl->fl_link)) {
+		printk("Attempting to free lock on active lock list");
+		BUG();
+	}
 
 	if (fl->fl_ops) {
 		if (fl->fl_ops->fl_release_private)

  reply	other threads:[~2005-01-05 20:36 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-01-05 19:57 panic - Attempting to free lock with active block list Jan-Frode Myklebust
2005-01-05 20:32 ` Chris Wright [this message]
2005-01-05 21:38   ` Jan-Frode Myklebust
2005-01-05 21:54   ` Trond Myklebust
2005-01-06 15:17     ` Jan-Frode Myklebust
2005-01-11 16:09 Anders Saaby

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20050105123207.J469@build.pdx.osdl.net \
    --to=chrisw@osdl.org \
    --cc=eithor@ii.uib.no \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-xfs@oss.sgi.com \
    --cc=matthew@wil.cx \
    --cc=smfrench@austin.rr.com \
    --cc=trond.myklebust@fys.uio.no \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).