DragonFly bugs List (threaded) for 2008-09
DragonFly BSD
DragonFly bugs List (threaded) for 2008-09
[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]

Re: [issue1126] panic: assertion: volume->io.lock.refs == 0 in hammer_unload_volume


From: Matthew Dillon <dillon@xxxxxxxxxxxxxxxxxxxx>
Date: Mon, 8 Sep 2008 15:07:40 -0700 (PDT)

:Thomas Nikolajsen <thomas.nikolajsen@mail.dk> added the comment:
:
:Have also seen this panic when using local file system for /usr/obj
:
:Crash dump on leaf in crash/hammer/ask/*.12.
:(using GENERIC kernel)
:
:----------
:priority:  -> bug
:status: unread -> chatting

    Thomas, please try this patch and tell me if it works.

    This code path is very rarely run.   It will panic every
    time if it gets in there due to the incorrect assertion.

					-Matt
					Matthew Dillon 
					<dillon@backplane.com>

Index: hammer_io.c
===================================================================
RCS file: /cvs/src/sys/vfs/hammer/hammer_io.c,v
retrieving revision 1.54
diff -u -p -r1.54 hammer_io.c
--- hammer_io.c	29 Aug 2008 20:19:08 -0000	1.54
+++ hammer_io.c	8 Sep 2008 22:05:47 -0000
@@ -279,7 +279,7 @@ hammer_io_inval(hammer_volume_t volume, 
 		bundirty(bp);
 		iou->io.reclaim = 1;
 		iou->io.waitdep = 1;
-		KKASSERT(iou->io.lock.refs == 0);
+		KKASSERT(iou->io.lock.refs == 1);
 		hammer_rel_buffer(&iou->buffer, 0);
 		/*hammer_io_deallocate(bp);*/
 	} else {



[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]