Module Name:    src
Committed By:   hannken
Date:           Mon Nov 14 18:38:14 UTC 2011

Modified Files:
        src/sys/fs/union: union_subr.c

Log Message:
Remove a needless vnode lock/unlock dance.  This is a leftover from the
removal of VOP_LEASE().

Function union_removed_upper() always works on unlocked upper vnodes so
remove the test-and-unlock and add an assertion.


To generate a diff of this commit:
cvs rdiff -u -r1.51 -r1.52 src/sys/fs/union/union_subr.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/union/union_subr.c
diff -u src/sys/fs/union/union_subr.c:1.51 src/sys/fs/union/union_subr.c:1.52
--- src/sys/fs/union/union_subr.c:1.51	Tue Oct 18 09:22:53 2011
+++ src/sys/fs/union/union_subr.c	Mon Nov 14 18:38:13 2011
@@ -1,4 +1,4 @@
-/*	$NetBSD: union_subr.c,v 1.51 2011/10/18 09:22:53 hannken Exp $	*/
+/*	$NetBSD: union_subr.c,v 1.52 2011/11/14 18:38:13 hannken Exp $	*/
 
 /*
  * Copyright (c) 1994
@@ -72,7 +72,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: union_subr.c,v 1.51 2011/10/18 09:22:53 hannken Exp $");
+__KERNEL_RCSID(0, "$NetBSD: union_subr.c,v 1.52 2011/11/14 18:38:13 hannken Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -638,11 +638,6 @@ union_copyfile(struct vnode *fvp, struct
 	uio.uio_offset = 0;
 	UIO_SETUP_SYSSPACE(&uio);
 
-	VOP_UNLOCK(fvp);			/* XXX */
-	vn_lock(fvp, LK_EXCLUSIVE | LK_RETRY);	/* XXX */
-	VOP_UNLOCK(tvp);			/* XXX */
-	vn_lock(tvp, LK_EXCLUSIVE | LK_RETRY);	/* XXX */
-
 	tbuf = malloc(MAXBSIZE, M_TEMP, M_WAITOK);
 
 	/* ugly loop follows... */
@@ -961,6 +956,7 @@ union_removed_upper(struct union_node *u
 {
 	int hash;
 
+	KASSERT((un->un_flags & UN_ULOCK) == 0);
 #if 1
 	/*
 	 * We do not set the uppervp to NULLVP here, because lowervp
@@ -984,11 +980,6 @@ union_removed_upper(struct union_node *u
 		LIST_REMOVE(un, un_cache);
 	}
 	mutex_exit(&unheadlock[hash]);
-
-	if (un->un_flags & UN_ULOCK) {
-		un->un_flags &= ~UN_ULOCK;
-		VOP_UNLOCK(un->un_uppervp);
-	}
 }
 
 #if 0

Reply via email to