summaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/go/unit/nxt_go_port_memory.c12
-rw-r--r--src/nxt_port_memory.c12
2 files changed, 24 insertions, 0 deletions
diff --git a/src/go/unit/nxt_go_port_memory.c b/src/go/unit/nxt_go_port_memory.c
index 7a226672..89530fe8 100644
--- a/src/go/unit/nxt_go_port_memory.c
+++ b/src/go/unit/nxt_go_port_memory.c
@@ -64,6 +64,18 @@ nxt_go_new_port_mmap(nxt_go_process_t *process, nxt_port_id_t id,
nxt_go_debug("memfd_create(%s): %d", name, fd);
+#elif (NXT_HAVE_SHM_OPEN_ANON)
+
+ fd = shm_open(SHM_ANON, O_RDWR, S_IRUSR | S_IWUSR);
+
+ nxt_go_debug("shm_open(SHM_ANON): %d", fd);
+
+ if (nxt_slow_path(fd == -1)) {
+ nxt_go_warn("shm_open(SHM_ANON) failed %d", errno);
+
+ goto remove_fail;
+ }
+
#elif (NXT_HAVE_SHM_OPEN)
/* Just in case. */
diff --git a/src/nxt_port_memory.c b/src/nxt_port_memory.c
index f660b1b4..208c8b13 100644
--- a/src/nxt_port_memory.c
+++ b/src/nxt_port_memory.c
@@ -297,6 +297,18 @@ nxt_port_new_port_mmap(nxt_task_t *task, nxt_process_t *process,
nxt_debug(task, "memfd_create(%s): %FD", name, fd);
+#elif (NXT_HAVE_SHM_OPEN_ANON)
+
+ fd = shm_open(SHM_ANON, O_RDWR, S_IRUSR | S_IWUSR);
+
+ nxt_debug(task, "shm_open(SHM_ANON): %FD", fd);
+
+ if (nxt_slow_path(fd == -1)) {
+ nxt_alert(task, "shm_open(SHM_ANON) failed %E", nxt_errno);
+
+ goto remove_fail;
+ }
+
#elif (NXT_HAVE_SHM_OPEN)
/* Just in case. */