summaryrefslogtreecommitdiffstats
path: root/sys/boot/common
diff options
context:
space:
mode:
authordillon <dillon@FreeBSD.org>2001-08-20 00:41:12 +0000
committerdillon <dillon@FreeBSD.org>2001-08-20 00:41:12 +0000
commit05c33a209bd0403f851f4ffd54fe4d16a1a663ef (patch)
tree4f3fc469468f6ff18e20f33a23a0fca03e1113be /sys/boot/common
parent277945b1a7db16235f31ed390e6a74045bd62b5f (diff)
downloadFreeBSD-src-05c33a209bd0403f851f4ffd54fe4d16a1a663ef.zip
FreeBSD-src-05c33a209bd0403f851f4ffd54fe4d16a1a663ef.tar.gz
Limit the amount of KVM reserved for the buffer cache and for swap-meta
information. The default limits only effect machines with > 1GB of ram and can be overriden with two new kernel conf variables VM_SWZONE_SIZE_MAX and VM_BCACHE_SIZE_MAX, or with loader variables kern.maxswzone and kern.maxbcache. This has the effect of leaving more KVM available for sizing NMBCLUSTERS and 'maxusers' and should avoid tripups where a sysad adds memory to a machine and then sees the kernel panic on boot due to running out of KVM. Also change the default swap-meta auto-sizing calculation to allocate half of what it was previously allocating. The prior defaults were way too high. Note that we cannot afford to run out of swap-meta structures so we still stay somewhat conservative here.
Diffstat (limited to 'sys/boot/common')
-rw-r--r--sys/boot/common/loader.827
1 files changed, 27 insertions, 0 deletions
diff --git a/sys/boot/common/loader.8 b/sys/boot/common/loader.8
index 730f925..2ee850b 100644
--- a/sys/boot/common/loader.8
+++ b/sys/boot/common/loader.8
@@ -409,6 +409,33 @@ This overrides completely the value
determined when the kernel was compiled.
Modifies
.Va VM_KMEM_SIZE .
+.It Va kern.maxswzone
+Limits the amount of KVM to be used to hold swap
+meta information, which directly governs the
+maximum amount of swap the system can support.
+This value is specified in bytes of KVA space
+and defaults to around 70MBytes. Care should be taken
+to not reduce this value such that the actual
+amount of configured swap exceeds 1/2 the
+kernel-supported swap. The default 70MB allows
+the kernel to support a maximum of (approximately)
+14GB of configured swap. Only mess around with
+this parameter if you need to greatly extend the
+KVM reservation for other resources such as the
+buffer cache or NMBCLUSTERS. Modifies
+.Va VM_SWZONE_SIZE_MAX
+.It Va kern.maxbcache
+Limits the amount of KVM reserved for use by the
+buffer cache, specified in bytes. The default
+maximum is 200MB. This parameter is used to
+prevent the buffer cache from eating to much
+KVM in large-memory machine configurations.
+Only mess around with this parameter if you need to
+greatly extend the KVM reservation for other resources
+such as the swap zone or NMBCLUSTERS. Note that
+the NBUF parameter will override this limit.
+Modifies
+.Va VM_BCACHE_SIZE_MAX
.It Va machdep.pccard.pcic_irq
Overrides the IRQ normally assigned to a PCCARD controller.
Typically the first available interrupt will be allocated,
OpenPOWER on IntegriCloud