diff --git a/doc/src/sgml/runtime.sgml b/doc/src/sgml/runtime.sgml
index 131609d4dd2..84d1bce70ad 100644
--- a/doc/src/sgml/runtime.sgml
+++ b/doc/src/sgml/runtime.sgml
@@ -768,7 +768,8 @@ psql: could not connect to server: No such file or directory
In some cases it might also be necessary to increase
SEMMAP> to be at least on the order of
- SEMMNS>. This parameter defines the size of the semaphore
+ SEMMNS>. If the system has this parameter
+ (many do not), it defines the size of the semaphore
resource map, in which each contiguous block of available semaphores
needs an entry. When a semaphore set is freed it is either added to
an existing entry that is adjacent to the freed block or it is
@@ -821,7 +822,7 @@ psql: could not connect to server: No such file or directory
- The default settings can be changed using
+ The default IPC settings can be changed using
the sysctl or
loader interfaces. The following
parameters can be set using sysctl:
@@ -840,13 +841,9 @@ psql: could not connect to server: No such file or directory
kern.ipc.semmni=256
kern.ipc.semmns=512
-kern.ipc.semmnu=256
- After modifying these values a reboot is required for the new
+ After modifying that file, a reboot is required for the new
settings to take effect.
- (Note: FreeBSD does not use SEMMAP>. Older versions
- would accept but ignore a setting for kern.ipc.semmap>;
- newer versions reject it altogether.)
@@ -870,7 +867,7 @@ kern.ipc.semmnu=256
FreeBSD> versions before 4.0 work like
- OpenBSD> (see below).
+ old OpenBSD> (see below).
@@ -885,12 +882,19 @@ kern.ipc.semmnu=256
IPC parameters can be adjusted using sysctl,
for example:
-$ sysctl -w kern.ipc.shmmax=16777216
+# sysctl -w kern.ipc.semmni=100
- To have these settings persist over reboots, modify
+ To make these settings persist over reboots, modify
/etc/sysctl.conf.
+
+ You will usually want to increase kern.ipc.semmni
+ and kern.ipc.semmns,
+ as NetBSD's default settings
+ for these are uncomfortably small.
+
+
You might also want to configure your kernel to lock shared
memory into RAM and prevent it from being paged out to swap.
@@ -899,10 +903,10 @@ kern.ipc.semmnu=256
- NetBSD> versions before 5.0 work like
- OpenBSD> (see below), except that
- parameters should be set with the keyword options> not
- option>.
+ NetBSD versions before 5.0
+ work like old OpenBSD
+ (see below), except that kernel parameters should be set with the
+ keyword options not option.
@@ -913,11 +917,31 @@ kern.ipc.semmnu=256
- The options SYSVSHM> and SYSVSEM> need
- to be enabled when the kernel is compiled. (They are by
- default.) The maximum size of shared memory is determined by
- the option SHMMAXPGS> (in pages). The following
- shows an example of how to set the various parameters:
+ In OpenBSD 3.3 and later,
+ IPC parameters can be adjusted using sysctl,
+ for example:
+
+# sysctl kern.seminfo.semmni=100
+
+ To make these settings persist over reboots, modify
+ /etc/sysctl.conf.
+
+
+
+ You will usually want to
+ increase kern.seminfo.semmni
+ and kern.seminfo.semmns,
+ as OpenBSD's default settings
+ for these are uncomfortably small.
+
+
+
+ In older OpenBSD versions,
+ you will need to build a custom kernel to change the IPC parameters.
+ Make sure that the options SYSVSHM
+ and SYSVSEM are enabled, too. (They are by
+ default.) The following shows an example of how to set the various
+ parameters in the kernel configuration file:
option SYSVSHM
option SHMMAXPGS=4096