aboutsummaryrefslogtreecommitdiff
path: root/src/event/ngx_event.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/event/ngx_event.c')
-rw-r--r--src/event/ngx_event.c17
1 files changed, 11 insertions, 6 deletions
diff --git a/src/event/ngx_event.c b/src/event/ngx_event.c
index 672eac2ba..f3b19a790 100644
--- a/src/event/ngx_event.c
+++ b/src/event/ngx_event.c
@@ -414,11 +414,12 @@ static ngx_int_t
ngx_event_module_init(ngx_cycle_t *cycle)
{
void ***cf;
+ u_char *shared;
+ size_t size;
ngx_event_conf_t *ecf;
ngx_core_conf_t *ccf;
+ ngx_shm_t shm;
#if !(NGX_WIN32)
- char *shared;
- size_t size;
ngx_int_t limit;
struct rlimit rlmt;
#endif
@@ -461,6 +462,8 @@ ngx_event_module_init(ngx_cycle_t *cycle)
}
}
+#endif /* !(NGX_WIN32) */
+
if (ccf->master == 0 || ngx_accept_mutex_ptr) {
return NGX_OK;
@@ -483,11 +486,15 @@ ngx_event_module_init(ngx_cycle_t *cycle)
#endif
- shared = ngx_create_shared_memory(size, cycle->log);
- if (shared == NULL) {
+ shm.size = size;
+ shm.log = cycle->log;
+
+ if (ngx_shm_alloc(&shm) != NGX_OK) {
return NGX_ERROR;
}
+ shared = shm.addr;
+
ngx_accept_mutex_ptr = (ngx_atomic_t *) shared;
ngx_connection_counter = (ngx_atomic_t *) (shared + 1 * 128);
@@ -508,8 +515,6 @@ ngx_event_module_init(ngx_cycle_t *cycle)
"counter: %p, %d",
ngx_connection_counter, *ngx_connection_counter);
-#endif /* !(NGX_WIN32) */
-
return NGX_OK;
}