summaryrefslogtreecommitdiffstats
path: root/sys/kern/sysv_shm.c
diff options
context:
space:
mode:
authorpjd <pjd@FreeBSD.org>2012-02-08 09:18:22 +0000
committerpjd <pjd@FreeBSD.org>2012-02-08 09:18:22 +0000
commitbf6a1ce0702015368048eb4296b98f7209d577fe (patch)
treeccea55a788091db12584c9238cd94fed71ed02c6 /sys/kern/sysv_shm.c
parentdd6bba093e5163f05fcfb84865b091c7f63dae7e (diff)
downloadFreeBSD-src-bf6a1ce0702015368048eb4296b98f7209d577fe.zip
FreeBSD-src-bf6a1ce0702015368048eb4296b98f7209d577fe.tar.gz
Allow to set kern.ipc.shmmax from /boot/loader.conf.
MFC after: 1 week
Diffstat (limited to 'sys/kern/sysv_shm.c')
-rw-r--r--sys/kern/sysv_shm.c14
1 files changed, 7 insertions, 7 deletions
diff --git a/sys/kern/sysv_shm.c b/sys/kern/sysv_shm.c
index 2bad484..c717c0d 100644
--- a/sys/kern/sysv_shm.c
+++ b/sys/kern/sysv_shm.c
@@ -891,14 +891,14 @@ shminit()
printf("kern.ipc.shmmaxpgs is now called kern.ipc.shmall!\n");
#endif
TUNABLE_ULONG_FETCH("kern.ipc.shmall", &shminfo.shmall);
-
- /* Initialize shmmax dealing with possible overflow. */
- for (i = PAGE_SIZE; i > 0; i--) {
- shminfo.shmmax = shminfo.shmall * i;
- if (shminfo.shmmax >= shminfo.shmall)
- break;
+ if (!TUNABLE_ULONG_FETCH("kern.ipc.shmmax", &shminfo.shmmax)) {
+ /* Initialize shmmax dealing with possible overflow. */
+ for (i = PAGE_SIZE; i > 0; i--) {
+ shminfo.shmmax = shminfo.shmall * i;
+ if (shminfo.shmmax >= shminfo.shmall)
+ break;
+ }
}
-
TUNABLE_ULONG_FETCH("kern.ipc.shmmin", &shminfo.shmmin);
TUNABLE_ULONG_FETCH("kern.ipc.shmmni", &shminfo.shmmni);
TUNABLE_ULONG_FETCH("kern.ipc.shmseg", &shminfo.shmseg);
OpenPOWER on IntegriCloud