aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Wemm <peter@FreeBSD.org>2000-05-21 13:52:13 +0000
committerPeter Wemm <peter@FreeBSD.org>2000-05-21 13:52:13 +0000
commit24488c7498c045c37f5cf5ab118795324baa19b8 (patch)
tree61a1ad4cd728d8212a016cc53ca5ffd448d17073
parent249645144d24e86f021b30c8637a8e900076f1c0 (diff)
Notes
-rw-r--r--sys/conf/NOTES1
-rw-r--r--sys/conf/options1
-rw-r--r--sys/i386/conf/LINT1
-rw-r--r--sys/i386/conf/NOTES1
-rw-r--r--sys/kern/sysv_shm.c5
5 files changed, 9 insertions, 0 deletions
diff --git a/sys/conf/NOTES b/sys/conf/NOTES
index b42f64395eef..d8e67f860027 100644
--- a/sys/conf/NOTES
+++ b/sys/conf/NOTES
@@ -2363,6 +2363,7 @@ options SHMMAXPGS=1025
options SHMMIN=2
options SHMMNI=33
options SHMSEG=9
+options SHM_PHYS_BACKED
options SHOW_BUSYBUFS # List buffers that prevent root unmount
options SIMPLELOCK_DEBUG
options SI_DEBUG
diff --git a/sys/conf/options b/sys/conf/options
index 633681cb1b2d..b103db6ea64a 100644
--- a/sys/conf/options
+++ b/sys/conf/options
@@ -73,6 +73,7 @@ SHMMAXPGS opt_sysvipc.h
SHMMIN opt_sysvipc.h
SHMMNI opt_sysvipc.h
SHMSEG opt_sysvipc.h
+SHM_PHYS_BACKED opt_sysvipc.h
SEMMAP opt_sysvipc.h
SEMMNI opt_sysvipc.h
SEMMNS opt_sysvipc.h
diff --git a/sys/i386/conf/LINT b/sys/i386/conf/LINT
index b42f64395eef..d8e67f860027 100644
--- a/sys/i386/conf/LINT
+++ b/sys/i386/conf/LINT
@@ -2363,6 +2363,7 @@ options SHMMAXPGS=1025
options SHMMIN=2
options SHMMNI=33
options SHMSEG=9
+options SHM_PHYS_BACKED
options SHOW_BUSYBUFS # List buffers that prevent root unmount
options SIMPLELOCK_DEBUG
options SI_DEBUG
diff --git a/sys/i386/conf/NOTES b/sys/i386/conf/NOTES
index b42f64395eef..d8e67f860027 100644
--- a/sys/i386/conf/NOTES
+++ b/sys/i386/conf/NOTES
@@ -2363,6 +2363,7 @@ options SHMMAXPGS=1025
options SHMMIN=2
options SHMMNI=33
options SHMSEG=9
+options SHM_PHYS_BACKED
options SHOW_BUSYBUFS # List buffers that prevent root unmount
options SIMPLELOCK_DEBUG
options SI_DEBUG
diff --git a/sys/kern/sysv_shm.c b/sys/kern/sysv_shm.c
index 83311b005e50..16019dcfebbd 100644
--- a/sys/kern/sysv_shm.c
+++ b/sys/kern/sysv_shm.c
@@ -528,8 +528,13 @@ shmget_allocate_segment(p, uap, mode)
* We make sure that we have allocated a pager before we need
* to.
*/
+#ifdef SHM_PHYS_BACKED
+ shm_handle->shm_object =
+ vm_pager_allocate(OBJT_PHYS, 0, size, VM_PROT_DEFAULT, 0);
+#else
shm_handle->shm_object =
vm_pager_allocate(OBJT_SWAP, 0, size, VM_PROT_DEFAULT, 0);
+#endif
vm_object_clear_flag(shm_handle->shm_object, OBJ_ONEMAPPING);
vm_object_set_flag(shm_handle->shm_object, OBJ_NOSPLIT);