DragonFly BSD
DragonFly kernel List (threaded) for 2003-11
[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]

lockmgr: non-zero exclusive count (was Re: **HEADS UP** FreeBSD-5 boot code has been committed)


From: YONETANI Tomokazu <qhwt@xxxxxxxxxxxxx>
Date: Sat, 15 Nov 2003 15:32:26 +0900

On Fri, Nov 14, 2003 at 11:35:37AM -0800, Matthew Dillon wrote:
>     I suspect this may have been due to the mkfifo bug.  cvsup an
>     update and see if the new kernel continues to have problems.

Did cvsup, buildkernel and installkernel, and the problem is gone.
However, the new kernel doesn't survive make -j2 buildworld:

  lockmgr: non-zero exclusive count

sorry, I couldn't get the exact panic message because the
syncing disk message didn't complete; also tried dropping into
DDB, but the trace command only showed two lines, and the last one
is 'col_conv.342' again. I also noticed some weird messages appeared
while doing buildworld:

  nm: could not exec elf/nm in /usr/obj/home/source/dragonfly/sr: No such file or directory

/home/source/dragonfly/src is where I keep the Dragonfly source tree,
but the last 'c' is missing.
I'm going to do make -j2 buildworld again with kern.sync_on_panic=0
to see if it's possible to get the traceback.

Index: kern_shutdown.c
===================================================================
RCS file: /home/source/dragonfly/cvs/src/sys/kern/kern_shutdown.c,v
retrieving revision 1.13
diff -u -r1.13 kern_shutdown.c
--- kern_shutdown.c	9 Nov 2003 02:22:36 -0000	1.13
+++ kern_shutdown.c	13 Nov 2003 12:06:05 -0000
@@ -104,6 +104,10 @@
 	&trace_on_panic, 0, "Print stack trace on kernel panic");
 #endif
 
+int sync_on_panic = 1;
+SYSCTL_INT(_kern, OID_AUTO, sync_on_panic, CTLFLAG_RW,
+	&sync_on_panic, 0, "Do a sync before rebooting from a panic");
+
 SYSCTL_NODE(_kern, OID_AUTO, shutdown, CTLFLAG_RW, 0, "Shutdown environment");
 
 #ifdef	HW_WDOG
@@ -576,6 +580,8 @@
 	static char buf[256];
 
 	bootopt = RB_AUTOBOOT | RB_DUMP;
+	if (!sync_on_panic)
+		bootopt |= RB_NOSYNC;
 	newpanic = 0;
 	if (panicstr)
 		bootopt |= RB_NOSYNC;

Regards.



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