summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjkim <jkim@FreeBSD.org>2014-10-07 20:13:47 +0000
committerjkim <jkim@FreeBSD.org>2014-10-07 20:13:47 +0000
commit52fd30aa97a531d2dc0df1ecea546ff6f14ec04f (patch)
tree533f23f6bade4f63683530af74e6cac73a4e4fd3
parent4c1564fe91c882487190f5fe20ff21f94ed75c00 (diff)
downloadFreeBSD-src-52fd30aa97a531d2dc0df1ecea546ff6f14ec04f.zip
FreeBSD-src-52fd30aa97a531d2dc0df1ecea546ff6f14ec04f.tar.gz
Make kern.nswbuf tunable from loader.
MFC after: 1 week
-rw-r--r--sys/kern/vfs_bio.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/sys/kern/vfs_bio.c b/sys/kern/vfs_bio.c
index 5a37b0b..19feecd 100644
--- a/sys/kern/vfs_bio.c
+++ b/sys/kern/vfs_bio.c
@@ -667,6 +667,10 @@ bd_speedup(void)
mtx_unlock(&bdlock);
}
+#ifndef NSWBUF_MIN
+#define NSWBUF_MIN 16
+#endif
+
#ifdef __i386__
#define TRANSIENT_DENOM 5
#else
@@ -778,11 +782,10 @@ kern_vfs_bio_buffer_alloc(caddr_t v, long physmem_est)
* swbufs are used as temporary holders for I/O, such as paging I/O.
* We have no less then 16 and no more then 256.
*/
- nswbuf = max(min(nbuf/4, 256), 16);
-#ifdef NSWBUF_MIN
+ nswbuf = min(nbuf / 4, 256);
+ TUNABLE_INT_FETCH("kern.nswbuf", &nswbuf);
if (nswbuf < NSWBUF_MIN)
nswbuf = NSWBUF_MIN;
-#endif
/*
* Reserve space for the buffer cache buffers
OpenPOWER on IntegriCloud