details: http://hg.nginx.org/nginx/rev/3377f9459e99 branches: changeset: 5820:3377f9459e99 user: Valentin Bartenev <vb...@nginx.com> date: Mon Sep 01 18:20:03 2014 +0400 description: Events: removed broken thread support from posted events.
It's mostly dead code. And the idea of thread support for this task has been deprecated. diffstat: src/core/ngx_connection.c | 25 +---- src/core/ngx_resolver.c | 11 -- src/event/modules/ngx_devpoll_module.c | 28 +---- src/event/modules/ngx_epoll_module.c | 26 +--- src/event/modules/ngx_eventport_module.c | 28 +---- src/event/modules/ngx_kqueue_module.c | 29 +---- src/event/modules/ngx_poll_module.c | 28 +---- src/event/modules/ngx_rtsig_module.c | 34 +---- src/event/modules/ngx_select_module.c | 11 +- src/event/modules/ngx_win32_select_module.c | 11 +- src/event/ngx_event.c | 22 +---- src/event/ngx_event.h | 29 ----- src/event/ngx_event_accept.c | 7 - src/event/ngx_event_connect.c | 11 -- src/event/ngx_event_mutex.c | 2 +- src/event/ngx_event_posted.c | 144 +--------------------------- src/event/ngx_event_posted.h | 30 +---- src/event/ngx_event_timer.c | 30 ----- src/os/unix/ngx_channel.c | 7 - src/os/unix/ngx_process_cycle.c | 9 +- 20 files changed, 66 insertions(+), 456 deletions(-) diffs (truncated from 1018 to 300 lines): diff -r 8e7ee4c70a3c -r 3377f9459e99 src/core/ngx_connection.c --- a/src/core/ngx_connection.c Mon Sep 01 17:50:59 2014 +0400 +++ b/src/core/ngx_connection.c Mon Sep 01 18:20:03 2014 +0400 @@ -951,7 +951,9 @@ ngx_close_connection(ngx_connection_t *c * before we clean the connection */ - ngx_mutex_lock(ngx_posted_events_mutex); + ngx_unlock(&c->lock); + +#endif if (c->read->prev) { ngx_delete_posted_event(c->read); @@ -964,27 +966,6 @@ ngx_close_connection(ngx_connection_t *c c->read->closed = 1; c->write->closed = 1; - ngx_unlock(&c->lock); - c->read->locked = 0; - c->write->locked = 0; - - ngx_mutex_unlock(ngx_posted_events_mutex); - -#else - - if (c->read->prev) { - ngx_delete_posted_event(c->read); - } - - if (c->write->prev) { - ngx_delete_posted_event(c->write); - } - - c->read->closed = 1; - c->write->closed = 1; - -#endif - ngx_reusable_connection(c, 0); log_error = c->log_error; diff -r 8e7ee4c70a3c -r 3377f9459e99 src/core/ngx_resolver.c --- a/src/core/ngx_resolver.c Mon Sep 01 17:50:59 2014 +0400 +++ b/src/core/ngx_resolver.c Mon Sep 01 18:20:03 2014 +0400 @@ -3082,17 +3082,6 @@ ngx_udp_connect(ngx_udp_connection_t *uc c->number = ngx_atomic_fetch_add(ngx_connection_counter, 1); -#if (NGX_THREADS) - - /* TODO: lock event when call completion handler */ - - rev->lock = &c->lock; - wev->lock = &c->lock; - rev->own_lock = &c->lock; - wev->own_lock = &c->lock; - -#endif - ngx_log_debug3(NGX_LOG_DEBUG_EVENT, &uc->log, 0, "connect to %V, fd:%d #%uA", &uc->server, s, c->number); diff -r 8e7ee4c70a3c -r 3377f9459e99 src/event/modules/ngx_devpoll_module.c --- a/src/event/modules/ngx_devpoll_module.c Mon Sep 01 17:50:59 2014 +0400 +++ b/src/event/modules/ngx_devpoll_module.c Mon Sep 01 18:20:03 2014 +0400 @@ -404,8 +404,6 @@ ngx_devpoll_process_events(ngx_cycle_t * return NGX_ERROR; } - ngx_mutex_lock(ngx_posted_events_mutex); - for (i = 0; i < events; i++) { fd = event_list[i].fd; @@ -495,19 +493,13 @@ ngx_devpoll_process_events(ngx_cycle_t * rev = c->read; if ((revents & POLLIN) && rev->active) { - - if ((flags & NGX_POST_THREAD_EVENTS) && !rev->accept) { - rev->posted_ready = 1; - - } else { - rev->ready = 1; - } + rev->ready = 1; if (flags & NGX_POST_EVENTS) { - queue = (ngx_event_t **) (rev->accept ? - &ngx_posted_accept_events : &ngx_posted_events); + queue = rev->accept ? &ngx_posted_accept_events + : &ngx_posted_events; - ngx_locked_post_event(rev, queue); + ngx_post_event(rev, queue); } else { instance = rev->instance; @@ -523,16 +515,10 @@ ngx_devpoll_process_events(ngx_cycle_t * wev = c->write; if ((revents & POLLOUT) && wev->active) { - - if (flags & NGX_POST_THREAD_EVENTS) { - wev->posted_ready = 1; - - } else { - wev->ready = 1; - } + wev->ready = 1; if (flags & NGX_POST_EVENTS) { - ngx_locked_post_event(wev, &ngx_posted_events); + ngx_post_event(wev, &ngx_posted_events); } else { wev->handler(wev); @@ -540,8 +526,6 @@ ngx_devpoll_process_events(ngx_cycle_t * } } - ngx_mutex_unlock(ngx_posted_events_mutex); - return NGX_OK; } diff -r 8e7ee4c70a3c -r 3377f9459e99 src/event/modules/ngx_epoll_module.c --- a/src/event/modules/ngx_epoll_module.c Mon Sep 01 17:50:59 2014 +0400 +++ b/src/event/modules/ngx_epoll_module.c Mon Sep 01 18:20:03 2014 +0400 @@ -612,8 +612,6 @@ ngx_epoll_process_events(ngx_cycle_t *cy return NGX_ERROR; } - ngx_mutex_lock(ngx_posted_events_mutex); - for (i = 0; i < events; i++) { c = event_list[i].data.ptr; @@ -674,18 +672,13 @@ ngx_epoll_process_events(ngx_cycle_t *cy } #endif - if ((flags & NGX_POST_THREAD_EVENTS) && !rev->accept) { - rev->posted_ready = 1; - - } else { - rev->ready = 1; - } + rev->ready = 1; if (flags & NGX_POST_EVENTS) { - queue = (ngx_event_t **) (rev->accept ? - &ngx_posted_accept_events : &ngx_posted_events); + queue = rev->accept ? &ngx_posted_accept_events + : &ngx_posted_events; - ngx_locked_post_event(rev, queue); + ngx_post_event(rev, queue); } else { rev->handler(rev); @@ -708,15 +701,10 @@ ngx_epoll_process_events(ngx_cycle_t *cy continue; } - if (flags & NGX_POST_THREAD_EVENTS) { - wev->posted_ready = 1; - - } else { - wev->ready = 1; - } + wev->ready = 1; if (flags & NGX_POST_EVENTS) { - ngx_locked_post_event(wev, &ngx_posted_events); + ngx_post_event(wev, &ngx_posted_events); } else { wev->handler(wev); @@ -724,8 +712,6 @@ ngx_epoll_process_events(ngx_cycle_t *cy } } - ngx_mutex_unlock(ngx_posted_events_mutex); - return NGX_OK; } diff -r 8e7ee4c70a3c -r 3377f9459e99 src/event/modules/ngx_eventport_module.c --- a/src/event/modules/ngx_eventport_module.c Mon Sep 01 17:50:59 2014 +0400 +++ b/src/event/modules/ngx_eventport_module.c Mon Sep 01 18:20:03 2014 +0400 @@ -466,8 +466,6 @@ ngx_eventport_process_events(ngx_cycle_t return NGX_ERROR; } - ngx_mutex_lock(ngx_posted_events_mutex); - for (i = 0; i < events; i++) { if (event_list[i].portev_source == PORT_SOURCE_TIMER) { @@ -534,19 +532,13 @@ ngx_eventport_process_events(ngx_cycle_t wev->active = 0; if (revents & POLLIN) { - - if ((flags & NGX_POST_THREAD_EVENTS) && !rev->accept) { - rev->posted_ready = 1; - - } else { - rev->ready = 1; - } + rev->ready = 1; if (flags & NGX_POST_EVENTS) { - queue = (ngx_event_t **) (rev->accept ? - &ngx_posted_accept_events : &ngx_posted_events); + queue = rev->accept ? &ngx_posted_accept_events + : &ngx_posted_events; - ngx_locked_post_event(rev, queue); + ngx_post_event(rev, queue); } else { rev->handler(rev); @@ -574,16 +566,10 @@ ngx_eventport_process_events(ngx_cycle_t } if (revents & POLLOUT) { - - if (flags & NGX_POST_THREAD_EVENTS) { - wev->posted_ready = 1; - - } else { - wev->ready = 1; - } + wev->ready = 1; if (flags & NGX_POST_EVENTS) { - ngx_locked_post_event(wev, &ngx_posted_events); + ngx_post_event(wev, &ngx_posted_events); } else { wev->handler(wev); @@ -600,8 +586,6 @@ ngx_eventport_process_events(ngx_cycle_t } } - ngx_mutex_unlock(ngx_posted_events_mutex); - return NGX_OK; } diff -r 8e7ee4c70a3c -r 3377f9459e99 src/event/modules/ngx_kqueue_module.c --- a/src/event/modules/ngx_kqueue_module.c Mon Sep 01 17:50:59 2014 +0400 +++ b/src/event/modules/ngx_kqueue_module.c Mon Sep 01 18:20:03 2014 +0400 @@ -573,8 +573,6 @@ ngx_kqueue_process_events(ngx_cycle_t *c return NGX_ERROR; } - ngx_mutex_lock(ngx_posted_events_mutex); - for (i = 0; i < events; i++) { ngx_kqueue_dump_event(cycle->log, &event_list[i]); @@ -626,24 +624,6 @@ ngx_kqueue_process_events(ngx_cycle_t *c ev->active = 0; } -#if (NGX_THREADS) - - if ((flags & NGX_POST_THREAD_EVENTS) && !ev->accept) { - ev->posted_ready = 1; - ev->posted_available = event_list[i].data; - - if (event_list[i].flags & EV_EOF) { - ev->posted_eof = 1; - ev->posted_errno = event_list[i].fflags; - } - - ngx_locked_post_event(ev, &ngx_posted_events); - - continue; - } - -#endif - ev->available = event_list[i].data; if (event_list[i].flags & EV_EOF) { @@ -674,9 +654,10 @@ ngx_kqueue_process_events(ngx_cycle_t *c } if (flags & NGX_POST_EVENTS) { - queue = (ngx_event_t **) (ev->accept ? &ngx_posted_accept_events: - &ngx_posted_events); - ngx_locked_post_event(ev, queue); + queue = ev->accept ? &ngx_posted_accept_events + : &ngx_posted_events; + _______________________________________________ nginx-devel mailing list nginx-devel@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-devel