Welcome! Log In Create A New Profile

Advanced

[nginx] Removed unix ngx_threaded and related ngx_process_changes.

Ruslan Ermilov
March 19, 2015 11:48PM
details: http://hg.nginx.org/nginx/rev/4652f8f26b12
branches:
changeset: 6030:4652f8f26b12
user: Ruslan Ermilov <ru@nginx.com>
date: Fri Mar 20 06:43:19 2015 +0300
description:
Removed unix ngx_threaded and related ngx_process_changes.

diffstat:

src/event/modules/ngx_aio_module.c | 1 -
src/event/modules/ngx_devpoll_module.c | 1 -
src/event/modules/ngx_epoll_module.c | 1 -
src/event/modules/ngx_eventport_module.c | 1 -
src/event/modules/ngx_iocp_module.c | 1 -
src/event/modules/ngx_kqueue_module.c | 95 ++--------------------------
src/event/modules/ngx_poll_module.c | 1 -
src/event/modules/ngx_rtsig_module.c | 1 -
src/event/modules/ngx_select_module.c | 1 -
src/event/modules/ngx_win32_select_module.c | 1 -
src/event/ngx_event.c | 2 +-
src/event/ngx_event.h | 2 -
src/os/unix/ngx_process_cycle.c | 1 -
src/os/unix/ngx_process_cycle.h | 1 -
14 files changed, 10 insertions(+), 100 deletions(-)

diffs (truncated from 305 to 300 lines):

diff -r e284f3ff6831 -r 4652f8f26b12 src/event/modules/ngx_aio_module.c
--- a/src/event/modules/ngx_aio_module.c Fri Mar 20 06:43:19 2015 +0300
+++ b/src/event/modules/ngx_aio_module.c Fri Mar 20 06:43:19 2015 +0300
@@ -49,7 +49,6 @@ ngx_event_module_t ngx_aio_module_ctx =
NULL, /* add an connection */
ngx_aio_del_connection, /* delete an connection */
NULL, /* trigger a notify */
- NULL, /* process the changes */
ngx_aio_process_events, /* process the events */
ngx_aio_init, /* init the events */
ngx_aio_done /* done the events */
diff -r e284f3ff6831 -r 4652f8f26b12 src/event/modules/ngx_devpoll_module.c
--- a/src/event/modules/ngx_devpoll_module.c Fri Mar 20 06:43:19 2015 +0300
+++ b/src/event/modules/ngx_devpoll_module.c Fri Mar 20 06:43:19 2015 +0300
@@ -89,7 +89,6 @@ ngx_event_module_t ngx_devpoll_module_c
NULL, /* add an connection */
NULL, /* delete an connection */
NULL, /* trigger a notify */
- NULL, /* process the changes */
ngx_devpoll_process_events, /* process the events */
ngx_devpoll_init, /* init the events */
ngx_devpoll_done, /* done the events */
diff -r e284f3ff6831 -r 4652f8f26b12 src/event/modules/ngx_epoll_module.c
--- a/src/event/modules/ngx_epoll_module.c Fri Mar 20 06:43:19 2015 +0300
+++ b/src/event/modules/ngx_epoll_module.c Fri Mar 20 06:43:19 2015 +0300
@@ -185,7 +185,6 @@ ngx_event_module_t ngx_epoll_module_ctx
#else
NULL, /* trigger a notify */
#endif
- NULL, /* process the changes */
ngx_epoll_process_events, /* process the events */
ngx_epoll_init, /* init the events */
ngx_epoll_done, /* done the events */
diff -r e284f3ff6831 -r 4652f8f26b12 src/event/modules/ngx_eventport_module.c
--- a/src/event/modules/ngx_eventport_module.c Fri Mar 20 06:43:19 2015 +0300
+++ b/src/event/modules/ngx_eventport_module.c Fri Mar 20 06:43:19 2015 +0300
@@ -182,7 +182,6 @@ ngx_event_module_t ngx_eventport_module
NULL, /* add an connection */
NULL, /* delete an connection */
ngx_eventport_notify, /* trigger a notify */
- NULL, /* process the changes */
ngx_eventport_process_events, /* process the events */
ngx_eventport_init, /* init the events */
ngx_eventport_done, /* done the events */
diff -r e284f3ff6831 -r 4652f8f26b12 src/event/modules/ngx_iocp_module.c
--- a/src/event/modules/ngx_iocp_module.c Fri Mar 20 06:43:19 2015 +0300
+++ b/src/event/modules/ngx_iocp_module.c Fri Mar 20 06:43:19 2015 +0300
@@ -65,7 +65,6 @@ ngx_event_module_t ngx_iocp_module_ctx
NULL, /* add an connection */
ngx_iocp_del_connection, /* delete an connection */
NULL, /* trigger a notify */
- NULL, /* process the changes */
ngx_iocp_process_events, /* process the events */
ngx_iocp_init, /* init the events */
ngx_iocp_done /* done the events */
diff -r e284f3ff6831 -r 4652f8f26b12 src/event/modules/ngx_kqueue_module.c
--- a/src/event/modules/ngx_kqueue_module.c Fri Mar 20 06:43:19 2015 +0300
+++ b/src/event/modules/ngx_kqueue_module.c Fri Mar 20 06:43:19 2015 +0300
@@ -30,7 +30,6 @@ static ngx_int_t ngx_kqueue_set_event(ng
#ifdef EVFILT_USER
static ngx_int_t ngx_kqueue_notify(ngx_event_handler_pt handler);
#endif
-static ngx_int_t ngx_kqueue_process_changes(ngx_cycle_t *cycle, ngx_uint_t try);
static ngx_int_t ngx_kqueue_process_events(ngx_cycle_t *cycle, ngx_msec_t timer,
ngx_uint_t flags);
static ngx_inline void ngx_kqueue_dump_event(ngx_log_t *log,
@@ -42,15 +41,7 @@ static char *ngx_kqueue_init_conf(ngx_cy

int ngx_kqueue = -1;

-/*
- * The "change_list" should be declared as ngx_thread_volatile.
- * However, the use of the change_list is localized in kqueue functions and
- * is protected by the mutex so even the "icc -ipo" should not build the code
- * with the race condition. Thus we avoid the declaration to make a more
- * readable code.
- */
-
-static struct kevent *change_list, *change_list0, *change_list1;
+static struct kevent *change_list;
static struct kevent *event_list;
static ngx_uint_t max_changes, nchanges, nevents;

@@ -99,7 +90,6 @@ ngx_event_module_t ngx_kqueue_module_ct
#else
NULL, /* trigger a notify */
#endif
- ngx_kqueue_process_changes, /* process the changes */
ngx_kqueue_process_events, /* process the events */
ngx_kqueue_init, /* init the events */
ngx_kqueue_done /* done the events */
@@ -165,27 +155,15 @@ ngx_kqueue_init(ngx_cycle_t *cycle, ngx_
nchanges = 0;
}

- if (change_list0) {
- ngx_free(change_list0);
+ if (change_list) {
+ ngx_free(change_list);
}

- change_list0 = ngx_alloc(kcf->changes * sizeof(struct kevent),
- cycle->log);
- if (change_list0 == NULL) {
+ change_list = ngx_alloc(kcf->changes * sizeof(struct kevent),
+ cycle->log);
+ if (change_list == NULL) {
return NGX_ERROR;
}
-
- if (change_list1) {
- ngx_free(change_list1);
- }
-
- change_list1 = ngx_alloc(kcf->changes * sizeof(struct kevent),
- cycle->log);
- if (change_list1 == NULL) {
- return NGX_ERROR;
- }
-
- change_list = change_list0;
}

max_changes = kcf->changes;
@@ -290,12 +268,9 @@ ngx_kqueue_done(ngx_cycle_t *cycle)

ngx_kqueue = -1;

- ngx_free(change_list1);
- ngx_free(change_list0);
+ ngx_free(change_list);
ngx_free(event_list);

- change_list1 = NULL;
- change_list0 = NULL;
change_list = NULL;
event_list = NULL;
max_changes = 0;
@@ -531,17 +506,8 @@ ngx_kqueue_process_events(ngx_cycle_t *c
ngx_queue_t *queue;
struct timespec ts, *tp;

- if (ngx_threaded) {
- if (ngx_kqueue_process_changes(cycle, 0) == NGX_ERROR) {
- return NGX_ERROR;
- }
-
- n = 0;
-
- } else {
- n = (int) nchanges;
- nchanges = 0;
- }
+ n = (int) nchanges;
+ nchanges = 0;

if (timer == NGX_TIMER_INFINITE) {
tp = NULL;
@@ -707,49 +673,6 @@ ngx_kqueue_process_events(ngx_cycle_t *c
}


-static ngx_int_t
-ngx_kqueue_process_changes(ngx_cycle_t *cycle, ngx_uint_t try)
-{
- int n;
- ngx_int_t rc;
- ngx_err_t err;
- struct timespec ts;
- struct kevent *changes;
-
- if (nchanges == 0) {
- return NGX_OK;
- }
-
- changes = change_list;
- if (change_list == change_list0) {
- change_list = change_list1;
- } else {
- change_list = change_list0;
- }
-
- n = (int) nchanges;
- nchanges = 0;
-
- ts.tv_sec = 0;
- ts.tv_nsec = 0;
-
- ngx_log_debug1(NGX_LOG_DEBUG_EVENT, cycle->log, 0,
- "kevent changes: %d", n);
-
- if (kevent(ngx_kqueue, changes, n, NULL, 0, &ts) == -1) {
- err = ngx_errno;
- ngx_log_error((err == NGX_EINTR) ? NGX_LOG_INFO : NGX_LOG_ALERT,
- cycle->log, err, "kevent() failed");
- rc = NGX_ERROR;
-
- } else {
- rc = NGX_OK;
- }
-
- return rc;
-}
-
-
static ngx_inline void
ngx_kqueue_dump_event(ngx_log_t *log, struct kevent *kev)
{
diff -r e284f3ff6831 -r 4652f8f26b12 src/event/modules/ngx_poll_module.c
--- a/src/event/modules/ngx_poll_module.c Fri Mar 20 06:43:19 2015 +0300
+++ b/src/event/modules/ngx_poll_module.c Fri Mar 20 06:43:19 2015 +0300
@@ -40,7 +40,6 @@ ngx_event_module_t ngx_poll_module_ctx
NULL, /* add an connection */
NULL, /* delete an connection */
NULL, /* trigger a notify */
- NULL, /* process the changes */
ngx_poll_process_events, /* process the events */
ngx_poll_init, /* init the events */
ngx_poll_done /* done the events */
diff -r e284f3ff6831 -r 4652f8f26b12 src/event/modules/ngx_rtsig_module.c
--- a/src/event/modules/ngx_rtsig_module.c Fri Mar 20 06:43:19 2015 +0300
+++ b/src/event/modules/ngx_rtsig_module.c Fri Mar 20 06:43:19 2015 +0300
@@ -131,7 +131,6 @@ ngx_event_module_t ngx_rtsig_module_ctx
ngx_rtsig_add_connection, /* add an connection */
ngx_rtsig_del_connection, /* delete an connection */
NULL, /* trigger a notify */
- NULL, /* process the changes */
ngx_rtsig_process_events, /* process the events */
ngx_rtsig_init, /* init the events */
ngx_rtsig_done, /* done the events */
diff -r e284f3ff6831 -r 4652f8f26b12 src/event/modules/ngx_select_module.c
--- a/src/event/modules/ngx_select_module.c Fri Mar 20 06:43:19 2015 +0300
+++ b/src/event/modules/ngx_select_module.c Fri Mar 20 06:43:19 2015 +0300
@@ -48,7 +48,6 @@ ngx_event_module_t ngx_select_module_ct
NULL, /* add an connection */
NULL, /* delete an connection */
NULL, /* trigger a notify */
- NULL, /* process the changes */
ngx_select_process_events, /* process the events */
ngx_select_init, /* init the events */
ngx_select_done /* done the events */
diff -r e284f3ff6831 -r 4652f8f26b12 src/event/modules/ngx_win32_select_module.c
--- a/src/event/modules/ngx_win32_select_module.c Fri Mar 20 06:43:19 2015 +0300
+++ b/src/event/modules/ngx_win32_select_module.c Fri Mar 20 06:43:19 2015 +0300
@@ -49,7 +49,6 @@ ngx_event_module_t ngx_select_module_ct
NULL, /* add an connection */
NULL, /* delete an connection */
NULL, /* trigger a notify */
- NULL, /* process the changes */
ngx_select_process_events, /* process the events */
ngx_select_init, /* init the events */
ngx_select_done /* done the events */
diff -r e284f3ff6831 -r 4652f8f26b12 src/event/ngx_event.c
--- a/src/event/ngx_event.c Fri Mar 20 06:43:19 2015 +0300
+++ b/src/event/ngx_event.c Fri Mar 20 06:43:19 2015 +0300
@@ -178,7 +178,7 @@ ngx_event_module_t ngx_event_core_modul
ngx_event_core_create_conf, /* create configuration */
ngx_event_core_init_conf, /* init configuration */

- { NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL }
+ { NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL }
};


diff -r e284f3ff6831 -r 4652f8f26b12 src/event/ngx_event.h
--- a/src/event/ngx_event.h Fri Mar 20 06:43:19 2015 +0300
+++ b/src/event/ngx_event.h Fri Mar 20 06:43:19 2015 +0300
@@ -202,7 +202,6 @@ typedef struct {

ngx_int_t (*notify)(ngx_event_handler_pt handler);

- ngx_int_t (*process_changes)(ngx_cycle_t *cycle, ngx_uint_t nowait);
ngx_int_t (*process_events)(ngx_cycle_t *cycle, ngx_msec_t timer,
ngx_uint_t flags);

@@ -415,7 +414,6 @@ extern ngx_event_actions_t ngx_event_a
#endif


-#define ngx_process_changes ngx_event_actions.process_changes
#define ngx_process_events ngx_event_actions.process_events
#define ngx_done_events ngx_event_actions.done

diff -r e284f3ff6831 -r 4652f8f26b12 src/os/unix/ngx_process_cycle.c
--- a/src/os/unix/ngx_process_cycle.c Fri Mar 20 06:43:19 2015 +0300
+++ b/src/os/unix/ngx_process_cycle.c Fri Mar 20 06:43:19 2015 +0300
@@ -30,7 +30,6 @@ static void ngx_cache_loader_process_han

ngx_uint_t ngx_process;
ngx_pid_t ngx_pid;
-ngx_uint_t ngx_threaded;

sig_atomic_t ngx_reap;
sig_atomic_t ngx_sigio;
diff -r e284f3ff6831 -r 4652f8f26b12 src/os/unix/ngx_process_cycle.h
--- a/src/os/unix/ngx_process_cycle.h Fri Mar 20 06:43:19 2015 +0300
+++ b/src/os/unix/ngx_process_cycle.h Fri Mar 20 06:43:19 2015 +0300
@@ -43,7 +43,6 @@ extern ngx_pid_t ngx_pid;
extern ngx_pid_t ngx_new_binary;
extern ngx_uint_t ngx_inherited;

_______________________________________________
nginx-devel mailing list
nginx-devel@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-devel
Subject Author Views Posted

[nginx] Removed unix ngx_threaded and related ngx_process_changes.

Ruslan Ermilov 264 March 19, 2015 11:48PM



Sorry, you do not have permission to post/reply in this forum.

Online Users

Guests: 134
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready