summaryrefslogtreecommitdiffstats
path: root/sys/fs/specfs
diff options
context:
space:
mode:
authormckusick <mckusick@FreeBSD.org>2002-11-04 07:29:20 +0000
committermckusick <mckusick@FreeBSD.org>2002-11-04 07:29:20 +0000
commit60cacd70866ae92710ad996ea765e70fb67877f8 (patch)
tree5694da27a6e89b82221758de3f78a4e5febdb22f /sys/fs/specfs
parentfba58b2ee8645f3413780935b6f23697fe0f5743 (diff)
downloadFreeBSD-src-60cacd70866ae92710ad996ea765e70fb67877f8.zip
FreeBSD-src-60cacd70866ae92710ad996ea765e70fb67877f8.tar.gz
Add debug.doslowdown to enable/disable niced slowdown on I/O. Default
to off until locking interference issues get sorted out. Sponsored by: DARPA & NAI Labs.
Diffstat (limited to 'sys/fs/specfs')
-rw-r--r--sys/fs/specfs/spec_vnops.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/sys/fs/specfs/spec_vnops.c b/sys/fs/specfs/spec_vnops.c
index 5700f10..9a12ee4 100644
--- a/sys/fs/specfs/spec_vnops.c
+++ b/sys/fs/specfs/spec_vnops.c
@@ -49,6 +49,7 @@
#include <sys/stat.h>
#include <sys/fcntl.h>
#include <sys/vmmeter.h>
+#include <sys/sysctl.h>
#include <sys/tty.h>
#include <vm/vm.h>
#include <vm/vm_object.h>
@@ -515,6 +516,9 @@ strategy_init(void)
}
SYSINIT(strategy, SI_SUB_DRIVERS, SI_ORDER_MIDDLE, strategy_init, NULL)
+static int doslowdown = 0;
+SYSCTL_INT(_debug, OID_AUTO, doslowdown, CTLFLAG_RW, &doslowdown, 0, "");
+
/*
* Just call the device strategy routine
*/
@@ -543,7 +547,7 @@ spec_strategy(ap)
/*
* Slow down disk requests for niced processes.
*/
- if (td && td->td_ksegrp->kg_nice > 0) {
+ if (doslowdown && td && td->td_ksegrp->kg_nice > 0) {
mtx_lock(&strategy_mtx);
msleep(&strategy_mtx, &strategy_mtx,
PPAUSE | PCATCH | PDROP, "ioslow",
OpenPOWER on IntegriCloud