summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormr <mr@FreeBSD.org>2001-09-13 20:20:09 +0000
committermr <mr@FreeBSD.org>2001-09-13 20:20:09 +0000
commit2afc0f9696c6a8e96538fe9e9ee2184ddb23d2a7 (patch)
treea6d813a55deb15a93cd55296b98c55263945e02e
parentf521cb96aab7e9475bf9f4f0b2aaee19fb47d7ef (diff)
downloadFreeBSD-src-2afc0f9696c6a8e96538fe9e9ee2184ddb23d2a7.zip
FreeBSD-src-2afc0f9696c6a8e96538fe9e9ee2184ddb23d2a7.tar.gz
PR: kern/29698 (part)
Reviewed by: audit Add tunables for the sem* and shm* syscontrols for tuning on boottime until they become dynamic. SAP R/3 doesn't like the compiled in defaults.
-rw-r--r--sys/kern/sysv_sem.c11
-rw-r--r--sys/kern/sysv_shm.c7
2 files changed, 18 insertions, 0 deletions
diff --git a/sys/kern/sysv_sem.c b/sys/kern/sysv_sem.c
index b8bf079..a1deec7 100644
--- a/sys/kern/sysv_sem.c
+++ b/sys/kern/sysv_sem.c
@@ -172,6 +172,17 @@ seminit(void)
{
register int i;
+ TUNABLE_INT_FETCH("kern.ipc.semmap", &seminfo.semmap);
+ TUNABLE_INT_FETCH("kern.ipc.semmni", &seminfo.semmni);
+ TUNABLE_INT_FETCH("kern.ipc.semmns", &seminfo.semmns);
+ TUNABLE_INT_FETCH("kern.ipc.semmnu", &seminfo.semmnu);
+ TUNABLE_INT_FETCH("kern.ipc.semmsl", &seminfo.semmsl);
+ TUNABLE_INT_FETCH("kern.ipc.semopm", &seminfo.semopm);
+ TUNABLE_INT_FETCH("kern.ipc.semume", &seminfo.semume);
+ TUNABLE_INT_FETCH("kern.ipc.semusz", &seminfo.semusz);
+ TUNABLE_INT_FETCH("kern.ipc.semvmx", &seminfo.semvmx);
+ TUNABLE_INT_FETCH("kern.ipc.semaem", &seminfo.semaem);
+
sem = malloc(sizeof(struct sem) * seminfo.semmns, M_SEM, M_WAITOK);
if (sem == NULL)
panic("sem is NULL");
diff --git a/sys/kern/sysv_shm.c b/sys/kern/sysv_shm.c
index 649308d..650bee7 100644
--- a/sys/kern/sysv_shm.c
+++ b/sys/kern/sysv_shm.c
@@ -783,6 +783,13 @@ shminit()
{
int i;
+ TUNABLE_INT_FETCH("kern.ipc.shmmaxpgs", &shminfo.shmall);
+ shminfo.shmmax = shminfo.shmall * PAGE_SIZE;
+ TUNABLE_INT_FETCH("kern.ipc.shmmin", &shminfo.shmmin);
+ TUNABLE_INT_FETCH("kern.ipc.shmmni", &shminfo.shmmni);
+ TUNABLE_INT_FETCH("kern.ipc.shmseg", &shminfo.shmseg);
+ TUNABLE_INT_FETCH("kern.ipc.shm_use_phys", &shm_use_phys);
+
shmalloced = shminfo.shmmni;
shmsegs = malloc(shmalloced * sizeof(shmsegs[0]), M_SHM, M_WAITOK);
if (shmsegs == NULL)
OpenPOWER on IntegriCloud