Module Name:    src
Committed By:   ad
Date:           Sun Dec  8 19:23:51 UTC 2019

Modified Files:
        src/sys/dev/qbus: ts.c
        src/sys/kern: kern_physio.c

Log Message:
Avoid thundering herd: cv_broadcast(&bp->b_busy) -> cv_signal(&bp->b_busy)


To generate a diff of this commit:
cvs rdiff -u -r1.31 -r1.32 src/sys/dev/qbus/ts.c
cvs rdiff -u -r1.95 -r1.96 src/sys/kern/kern_physio.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/dev/qbus/ts.c
diff -u src/sys/dev/qbus/ts.c:1.31 src/sys/dev/qbus/ts.c:1.32
--- src/sys/dev/qbus/ts.c:1.31	Fri Jul 25 08:10:38 2014
+++ src/sys/dev/qbus/ts.c	Sun Dec  8 19:23:51 2019
@@ -1,4 +1,4 @@
-/*	$NetBSD: ts.c,v 1.31 2014/07/25 08:10:38 dholland Exp $ */
+/*	$NetBSD: ts.c,v 1.32 2019/12/08 19:23:51 ad Exp $ */
 
 /*-
  * Copyright (c) 1991 The Regents of the University of California.
@@ -66,7 +66,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: ts.c,v 1.31 2014/07/25 08:10:38 dholland Exp $");
+__KERNEL_RCSID(0, "$NetBSD: ts.c,v 1.32 2019/12/08 19:23:51 ad Exp $");
 
 #undef	TSDEBUG
 
@@ -390,7 +390,7 @@ tscommand(struct ts_softc *sc, dev_t dev
 		return;
 	biowait(bp);
 	mutex_enter(&bufcache_lock);
-	cv_broadcast(&bp->b_busy);
+	cv_signal(&bp->b_busy);
 	bp->b_cflags = 0;
 	mutex_exit(&bufcache_lock);
 }

Index: src/sys/kern/kern_physio.c
diff -u src/sys/kern/kern_physio.c:1.95 src/sys/kern/kern_physio.c:1.96
--- src/sys/kern/kern_physio.c:1.95	Thu Apr  4 12:26:45 2019
+++ src/sys/kern/kern_physio.c	Sun Dec  8 19:23:51 2019
@@ -1,4 +1,4 @@
-/*	$NetBSD: kern_physio.c,v 1.95 2019/04/04 12:26:45 mlelstv Exp $	*/
+/*	$NetBSD: kern_physio.c,v 1.96 2019/12/08 19:23:51 ad Exp $	*/
 
 /*-
  * Copyright (c) 1982, 1986, 1990, 1993
@@ -71,7 +71,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: kern_physio.c,v 1.95 2019/04/04 12:26:45 mlelstv Exp $");
+__KERNEL_RCSID(0, "$NetBSD: kern_physio.c,v 1.96 2019/12/08 19:23:51 ad Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -432,7 +432,7 @@ done_locked:
 		obp->b_cflags &= ~(BC_BUSY | BC_WANTED);
 		obp->b_flags &= ~(B_PHYS | B_RAW);
 		obp->b_iodone = NULL;
-		cv_broadcast(&obp->b_busy);
+		cv_signal(&obp->b_busy);
 		mutex_exit(&bufcache_lock);
 	}
 

Reply via email to