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

Re: New ext2-related panic

From: Matthew Dillon <dillon@xxxxxxxxxxxxxxxxxxxx>
Date: Tue, 21 Dec 2004 15:47:34 -0800 (PST)

:I got this new ext2-related panic today:
:panic: assertion: cnp->cn_flags & CNP_PDIRUNLOCK in relookup
:To reproduce it: (/mnt/ext2 is an ext2fs mount point)
:cd /mnt/ext2fs
:mkdir -p foo/bar
:mv foo/bar .  (or cd foo; mv bar ..)
:i.e., trying to move a directory up one level.
:The kernel dumps are at

    Try this patch.  It's the same problem that Kyle was having
    with msdosfs.

    (The issue here is that the old FreeBSD code was not properly
    tracking the CNP_PDIRUNLOCK flag in the particular code path
    in question.  The panics started occuring when I added an 
    assertion to ensure that the flag is in the proper state.  So
    in that sense it is a 'good' panic in that it is catching a
    situation where a CNP flag is not being properly adjusted
    for side effects).

					Matthew Dillon 

Index: ext2_vnops.c
RCS file: /cvs/src/sys/vfs/gnu/ext2fs/ext2_vnops.c,v
retrieving revision 1.17
diff -u -r1.17 ext2_vnops.c
--- ext2_vnops.c	12 Nov 2004 00:09:30 -0000	1.17
+++ ext2_vnops.c	21 Dec 2004 23:45:31 -0000
@@ -507,6 +507,7 @@
 		error = ext2_checkpath(ip, dp, tcnp->cn_cred);
+		tcnp->cn_flags |= CNP_PDIRUNLOCK;
 		if (error) {
 			goto out;

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