- Correct an assert in vop_rename_pre. fdvp may be locked if it is either

the target directory or file.  This case should fail in the filesystem
   anyway and perhaps kern_rename() should catch it.

Sponsored by:	Isilon Systems, Inc.
This commit is contained in:
Jeff Roberson 2006-03-19 20:14:46 +00:00
parent effd5e7682
commit e44270a781

View File

@ -3391,7 +3391,7 @@ vop_rename_pre(void *ap)
ASSERT_VI_UNLOCKED(a->a_fdvp, "VOP_RENAME");
/* Check the source (from). */
if (a->a_tdvp != a->a_fdvp)
if (a->a_tdvp != a->a_fdvp && a->a_tvp != a->a_fdvp)
ASSERT_VOP_UNLOCKED(a->a_fdvp, "vop_rename: fdvp locked");
if (a->a_tvp != a->a_fvp)
ASSERT_VOP_UNLOCKED(a->a_fvp, "vop_rename: tvp locked");