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); }