Module Name: src
Committed By: riastradh
Date: Wed Jul 13 03:28:41 UTC 2011
Modified Files:
src/sys/fs/tmpfs: tmpfs_vnops.c
Log Message:
Fix renaming over mismatched non-directory types in tmpfs.
Renaming a file of any non-directory type over another file of any
other non-directory type is OK -- they need not match as long as
neither is a directory, so loosen the kassert to reflect this.
XXX Need to write test cases for this.
ok dholland, rmind
To generate a diff of this commit:
cvs rdiff -u -r1.87 -r1.88 src/sys/fs/tmpfs/tmpfs_vnops.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/fs/tmpfs/tmpfs_vnops.c
diff -u src/sys/fs/tmpfs/tmpfs_vnops.c:1.87 src/sys/fs/tmpfs/tmpfs_vnops.c:1.88
--- src/sys/fs/tmpfs/tmpfs_vnops.c:1.87 Sun Jun 12 03:35:54 2011
+++ src/sys/fs/tmpfs/tmpfs_vnops.c Wed Jul 13 03:28:41 2011
@@ -1,4 +1,4 @@
-/* $NetBSD: tmpfs_vnops.c,v 1.87 2011/06/12 03:35:54 rmind Exp $ */
+/* $NetBSD: tmpfs_vnops.c,v 1.88 2011/07/13 03:28:41 riastradh Exp $ */
/*
* Copyright (c) 2005, 2006, 2007 The NetBSD Foundation, Inc.
@@ -35,7 +35,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: tmpfs_vnops.c,v 1.87 2011/06/12 03:35:54 rmind Exp $");
+__KERNEL_RCSID(0, "$NetBSD: tmpfs_vnops.c,v 1.88 2011/07/13 03:28:41 riastradh Exp $");
#include <sys/param.h>
#include <sys/dirent.h>
@@ -979,7 +979,7 @@
tde = tmpfs_dir_lookup(tdnode, tcnp);
}
KASSERT(tde && tde->td_node == tnode);
- KASSERT(tnode->tn_type == fnode->tn_type);
+ KASSERT((tnode->tn_type == VDIR) == (fnode->tn_type == VDIR));
/*
* Remove and destroy the directory entry on the target