Hey Konstaintin, shouldn't this be scaled against the actual amount of
KVA we have instead of an arbitrary limit?
-Alfred
On 6/2/13 9:16 PM, Konstantin Belousov wrote:
Author: kib
Date: Mon Jun 3 04:16:48 2013
New Revision: 251282
URL: http://svnweb.freebsd.org/changeset/base/251282
Log:
When auto-sizing the buffer cache, limit the amount of physical memory
used as the estimation of size, to 32GB. This provides around 100K of
buffer headers and corresponding KVA for buffer map at the peak.
Sizing the cache larger is not useful, also resulting in the wasting
and exhausting of KVA for large machines.
Reported and tested by: bdrewery
Sponsored by: The FreeBSD Foundation
Modified:
head/sys/kern/vfs_bio.c
Modified: head/sys/kern/vfs_bio.c
==============================================================================
--- head/sys/kern/vfs_bio.c Mon Jun 3 04:11:42 2013 (r251281)
+++ head/sys/kern/vfs_bio.c Mon Jun 3 04:16:48 2013 (r251282)
@@ -560,7 +560,8 @@ kern_vfs_bio_buffer_alloc(caddr_t v, lon
nbuf += min((physmem_est - 4096) / factor,
65536 / factor);
if (physmem_est > 65536)
- nbuf += (physmem_est - 65536) * 2 / (factor * 5);
+ nbuf += min((physmem_est - 65536) * 2 / (factor * 5),
+ 32 * 1024 * 1024 / (factor * 5));
if (maxbcache && nbuf > maxbcache / BKVASIZE)
nbuf = maxbcache / BKVASIZE;
_______________________________________________
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"