Module Name:    src
Committed By:   hannken
Date:           Mon Aug 24 08:30:17 UTC 2015

Modified Files:
        src/sys/fs/udf: udf.h udf_allocation.c udf_subr.c udf_vfsops.c

Log Message:
Remove dirtynodes_cv, it is only used for timed waits without any signals.

Replace the cv_timedwait with kpause.


To generate a diff of this commit:
cvs rdiff -u -r1.48 -r1.49 src/sys/fs/udf/udf.h
cvs rdiff -u -r1.37 -r1.38 src/sys/fs/udf/udf_allocation.c
cvs rdiff -u -r1.130 -r1.131 src/sys/fs/udf/udf_subr.c
cvs rdiff -u -r1.68 -r1.69 src/sys/fs/udf/udf_vfsops.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/udf/udf.h
diff -u src/sys/fs/udf/udf.h:1.48 src/sys/fs/udf/udf.h:1.49
--- src/sys/fs/udf/udf.h:1.48	Mon Apr  6 08:39:23 2015
+++ src/sys/fs/udf/udf.h	Mon Aug 24 08:30:17 2015
@@ -1,4 +1,4 @@
-/* $NetBSD: udf.h,v 1.48 2015/04/06 08:39:23 hannken Exp $ */
+/* $NetBSD: udf.h,v 1.49 2015/08/24 08:30:17 hannken Exp $ */
 
 /*
  * Copyright (c) 2006, 2008 Reinoud Zandijk
@@ -344,7 +344,6 @@ struct udf_mount {
 
 	/* syncing */
 	int		syncing;			/* are we syncing?   */
-	kcondvar_t 	dirtynodes_cv;			/* sleeping on sync  */
 
 	/* late allocation */
 	int32_t			 uncommitted_lbs[UDF_PARTITIONS];

Index: src/sys/fs/udf/udf_allocation.c
diff -u src/sys/fs/udf/udf_allocation.c:1.37 src/sys/fs/udf/udf_allocation.c:1.38
--- src/sys/fs/udf/udf_allocation.c:1.37	Wed Dec  3 21:34:55 2014
+++ src/sys/fs/udf/udf_allocation.c	Mon Aug 24 08:30:17 2015
@@ -1,4 +1,4 @@
-/* $NetBSD: udf_allocation.c,v 1.37 2014/12/03 21:34:55 reinoud Exp $ */
+/* $NetBSD: udf_allocation.c,v 1.38 2015/08/24 08:30:17 hannken Exp $ */
 
 /*
  * Copyright (c) 2006, 2008 Reinoud Zandijk
@@ -28,7 +28,7 @@
 
 #include <sys/cdefs.h>
 #ifndef lint
-__KERNEL_RCSID(0, "$NetBSD: udf_allocation.c,v 1.37 2014/12/03 21:34:55 reinoud Exp $");
+__KERNEL_RCSID(0, "$NetBSD: udf_allocation.c,v 1.38 2015/08/24 08:30:17 hannken Exp $");
 #endif /* not lint */
 
 
@@ -1084,11 +1084,8 @@ udf_reserve_space(struct udf_mount *ump,
 		DPRINTF(RESERVE, ("udf_reserve_space: issuing sync\n"));
 		mutex_exit(&ump->allocate_mutex);
 		udf_do_sync(ump, FSCRED, 0);
-		mutex_enter(&mntvnode_lock);
 		/* 1/8 second wait */
-		cv_timedwait(&ump->dirtynodes_cv, &mntvnode_lock,
-			hz/8);
-		mutex_exit(&mntvnode_lock);
+		kpause("udfsync2", false, hz/8, NULL);
 		mutex_enter(&ump->allocate_mutex);
 	}
 

Index: src/sys/fs/udf/udf_subr.c
diff -u src/sys/fs/udf/udf_subr.c:1.130 src/sys/fs/udf/udf_subr.c:1.131
--- src/sys/fs/udf/udf_subr.c:1.130	Mon Apr 20 13:44:16 2015
+++ src/sys/fs/udf/udf_subr.c	Mon Aug 24 08:30:17 2015
@@ -1,4 +1,4 @@
-/* $NetBSD: udf_subr.c,v 1.130 2015/04/20 13:44:16 riastradh Exp $ */
+/* $NetBSD: udf_subr.c,v 1.131 2015/08/24 08:30:17 hannken Exp $ */
 
 /*
  * Copyright (c) 2006, 2008 Reinoud Zandijk
@@ -29,7 +29,7 @@
 
 #include <sys/cdefs.h>
 #ifndef lint
-__KERNEL_RCSID(0, "$NetBSD: udf_subr.c,v 1.130 2015/04/20 13:44:16 riastradh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: udf_subr.c,v 1.131 2015/08/24 08:30:17 hannken Exp $");
 #endif /* not lint */
 
 
@@ -6433,8 +6433,7 @@ recount:
 	
 		if (ndirty) {
 			/* 1/4 second wait */
-			cv_timedwait(&ump->dirtynodes_cv, &mntvnode_lock,
-				hz/4);
+			kpause("udfsync2", false, hz/4, NULL);
 			goto recount;
 		}
 	}

Index: src/sys/fs/udf/udf_vfsops.c
diff -u src/sys/fs/udf/udf_vfsops.c:1.68 src/sys/fs/udf/udf_vfsops.c:1.69
--- src/sys/fs/udf/udf_vfsops.c:1.68	Mon Apr  6 08:39:23 2015
+++ src/sys/fs/udf/udf_vfsops.c	Mon Aug 24 08:30:17 2015
@@ -1,4 +1,4 @@
-/* $NetBSD: udf_vfsops.c,v 1.68 2015/04/06 08:39:23 hannken Exp $ */
+/* $NetBSD: udf_vfsops.c,v 1.69 2015/08/24 08:30:17 hannken Exp $ */
 
 /*
  * Copyright (c) 2006, 2008 Reinoud Zandijk
@@ -28,7 +28,7 @@
 
 #include <sys/cdefs.h>
 #ifndef lint
-__KERNEL_RCSID(0, "$NetBSD: udf_vfsops.c,v 1.68 2015/04/06 08:39:23 hannken Exp $");
+__KERNEL_RCSID(0, "$NetBSD: udf_vfsops.c,v 1.69 2015/08/24 08:30:17 hannken Exp $");
 #endif /* not lint */
 
 
@@ -262,7 +262,6 @@ free_udf_mountinfo(struct mount *mp)
 		mutex_destroy(&ump->ihash_lock);
 		mutex_destroy(&ump->logvol_mutex);
 		mutex_destroy(&ump->allocate_mutex);
-		cv_destroy(&ump->dirtynodes_cv);
 
 		MPFREE(ump->vat_table, M_UDFVOLD);
 
@@ -583,7 +582,6 @@ udf_mountfs(struct vnode *devvp, struct 
 	mutex_init(&ump->logvol_mutex, MUTEX_DEFAULT, IPL_NONE);
 	mutex_init(&ump->ihash_lock, MUTEX_DEFAULT, IPL_NONE);
 	mutex_init(&ump->allocate_mutex, MUTEX_DEFAULT, IPL_NONE);
-	cv_init(&ump->dirtynodes_cv, "udfsync2");
 
 	/* init rbtree for nodes, ordered by their icb address (long_ad) */
 	udf_init_nodes_tree(ump);

Reply via email to