diff options
Diffstat (limited to 'src/event/modules')
-rw-r--r-- | src/event/modules/ngx_devpoll_module.c | 26 | ||||
-rw-r--r-- | src/event/modules/ngx_epoll_module.c | 24 | ||||
-rw-r--r-- | src/event/modules/ngx_kqueue_module.c | 23 | ||||
-rw-r--r-- | src/event/modules/ngx_poll_module.c | 22 | ||||
-rw-r--r-- | src/event/modules/ngx_rtsig_module.c | 58 | ||||
-rw-r--r-- | src/event/modules/ngx_select_module.c | 27 |
6 files changed, 59 insertions, 121 deletions
diff --git a/src/event/modules/ngx_devpoll_module.c b/src/event/modules/ngx_devpoll_module.c index 54a595671..7238e5bcb 100644 --- a/src/event/modules/ngx_devpoll_module.c +++ b/src/event/modules/ngx_devpoll_module.c @@ -332,7 +332,6 @@ ngx_devpoll_process_events(ngx_cycle_t *cycle, ngx_msec_t timer, ngx_err_t err; ngx_int_t i; ngx_uint_t level; - ngx_msec_t delta; ngx_event_t *rev, *wev, **queue; ngx_connection_t *c; struct dvpoll dvp; @@ -349,6 +348,8 @@ ngx_devpoll_process_events(ngx_cycle_t *cycle, ngx_msec_t timer, "write(/dev/poll) failed"); return NGX_ERROR; } + + nchanges = 0; } dvp.dp_fds = event_list; @@ -362,10 +363,6 @@ ngx_devpoll_process_events(ngx_cycle_t *cycle, ngx_msec_t timer, err = 0; } - nchanges = 0; - - delta = ngx_current_msec; - if (flags & NGX_UPDATE_TIME) { ngx_time_update(0, 0); } @@ -388,21 +385,14 @@ ngx_devpoll_process_events(ngx_cycle_t *cycle, ngx_msec_t timer, return NGX_ERROR; } - if (timer != NGX_TIMER_INFINITE) { - delta = ngx_current_msec - delta; - - ngx_log_debug2(NGX_LOG_DEBUG_EVENT, cycle->log, 0, - "devpoll timer: %M, delta: %M", timer, delta); - } else { - if (events == 0) { - ngx_log_error(NGX_LOG_ALERT, cycle->log, 0, - "ioctl(DP_POLL) returned no events without timeout"); - return NGX_ERROR; + if (events == 0) { + if (timer != NGX_TIMER_INFINITE) { + return NGX_OK; } - } - if (events == 0) { - return NGX_OK; + ngx_log_error(NGX_LOG_ALERT, cycle->log, 0, + "ioctl(DP_POLL) returned no events without timeout"); + return NGX_ERROR; } ngx_mutex_lock(ngx_posted_events_mutex); diff --git a/src/event/modules/ngx_epoll_module.c b/src/event/modules/ngx_epoll_module.c index 14013dcd7..7364d7d00 100644 --- a/src/event/modules/ngx_epoll_module.c +++ b/src/event/modules/ngx_epoll_module.c @@ -391,7 +391,6 @@ ngx_epoll_process_events(ngx_cycle_t *cycle, ngx_msec_t timer, ngx_uint_t flags) ngx_uint_t level; ngx_err_t err; ngx_log_t *log; - ngx_msec_t delta; ngx_event_t *rev, *wev, **queue; ngx_connection_t *c; @@ -408,25 +407,10 @@ ngx_epoll_process_events(ngx_cycle_t *cycle, ngx_msec_t timer, ngx_uint_t flags) err = 0; } - delta = ngx_current_msec; - if (flags & NGX_UPDATE_TIME) { ngx_time_update(0, 0); } - if (timer != NGX_TIMER_INFINITE) { - delta = ngx_current_msec - delta; - - ngx_log_debug2(NGX_LOG_DEBUG_EVENT, cycle->log, 0, - "epoll timer: %M, delta: %M", timer, delta); - } else { - if (events == 0) { - ngx_log_error(NGX_LOG_ALERT, cycle->log, 0, - "epoll_wait() returned no events without timeout"); - return NGX_ERROR; - } - } - if (err) { if (err == NGX_EINTR) { @@ -446,7 +430,13 @@ ngx_epoll_process_events(ngx_cycle_t *cycle, ngx_msec_t timer, ngx_uint_t flags) } if (events == 0) { - return NGX_OK; + if (timer != NGX_TIMER_INFINITE) { + return NGX_OK; + } + + ngx_log_error(NGX_LOG_ALERT, cycle->log, 0, + "epoll_wait() returned no events without timeout"); + return NGX_ERROR; } ngx_mutex_lock(ngx_posted_events_mutex); diff --git a/src/event/modules/ngx_kqueue_module.c b/src/event/modules/ngx_kqueue_module.c index d4916792c..839afb575 100644 --- a/src/event/modules/ngx_kqueue_module.c +++ b/src/event/modules/ngx_kqueue_module.c @@ -473,7 +473,6 @@ ngx_kqueue_process_events(ngx_cycle_t *cycle, ngx_msec_t timer, ngx_int_t i, instance; ngx_uint_t level; ngx_err_t err; - ngx_msec_t delta; ngx_event_t *ev, **queue; struct timespec ts, *tp; @@ -509,8 +508,6 @@ ngx_kqueue_process_events(ngx_cycle_t *cycle, ngx_msec_t timer, err = 0; } - delta = ngx_current_msec; - if (flags & NGX_UPDATE_TIME) { ngx_time_update(0, 0); } @@ -536,22 +533,14 @@ ngx_kqueue_process_events(ngx_cycle_t *cycle, ngx_msec_t timer, return NGX_ERROR; } - if (timer != NGX_TIMER_INFINITE) { - delta = ngx_current_msec - delta; - - ngx_log_debug2(NGX_LOG_DEBUG_EVENT, cycle->log, 0, - "kevent timer: %M, delta: %M", timer, delta); - - } else { - if (events == 0) { - ngx_log_error(NGX_LOG_ALERT, cycle->log, 0, - "kevent() returned no events without timeout"); - return NGX_ERROR; + if (events == 0) { + if (timer != NGX_TIMER_INFINITE) { + return NGX_OK; } - } - if (events == 0) { - return NGX_OK; + ngx_log_error(NGX_LOG_ALERT, cycle->log, 0, + "kevent() returned no events without timeout"); + return NGX_ERROR; } ngx_mutex_lock(ngx_posted_events_mutex); diff --git a/src/event/modules/ngx_poll_module.c b/src/event/modules/ngx_poll_module.c index 61d617913..ffd6ace8a 100644 --- a/src/event/modules/ngx_poll_module.c +++ b/src/event/modules/ngx_poll_module.c @@ -241,7 +241,6 @@ ngx_poll_process_events(ngx_cycle_t *cycle, ngx_msec_t timer, ngx_uint_t flags) ngx_err_t err; ngx_int_t i, nready; ngx_uint_t found, level; - ngx_msec_t delta; ngx_event_t *ev, **queue; ngx_connection_t *c; @@ -267,8 +266,6 @@ ngx_poll_process_events(ngx_cycle_t *cycle, ngx_msec_t timer, ngx_uint_t flags) err = 0; } - delta = ngx_current_msec; - if (flags & NGX_UPDATE_TIME) { ngx_time_update(0, 0); } @@ -294,21 +291,14 @@ ngx_poll_process_events(ngx_cycle_t *cycle, ngx_msec_t timer, ngx_uint_t flags) return NGX_ERROR; } - if (timer != NGX_TIMER_INFINITE) { - delta = ngx_current_msec - delta; - - ngx_log_debug2(NGX_LOG_DEBUG_EVENT, cycle->log, 0, - "poll timer: %M, delta: %M", timer, delta); - } else { - if (ready == 0) { - ngx_log_error(NGX_LOG_ALERT, cycle->log, 0, - "poll() returned no events without timeout"); - return NGX_ERROR; + if (ready == 0) { + if (timer != NGX_TIMER_INFINITE) { + return NGX_OK; } - } - if (ready == 0) { - return NGX_OK; + ngx_log_error(NGX_LOG_ALERT, cycle->log, 0, + "poll() returned no events without timeout"); + return NGX_ERROR; } ngx_mutex_lock(ngx_posted_events_mutex); diff --git a/src/event/modules/ngx_rtsig_module.c b/src/event/modules/ngx_rtsig_module.c index 450943c2c..e57a5ddc9 100644 --- a/src/event/modules/ngx_rtsig_module.c +++ b/src/event/modules/ngx_rtsig_module.c @@ -286,7 +286,6 @@ ngx_rtsig_process_events(ngx_cycle_t *cycle, ngx_msec_t timer, ngx_uint_t flags) { int signo; ngx_int_t instance; - ngx_msec_t delta; ngx_err_t err; siginfo_t si; ngx_event_t *rev, *wev; @@ -317,41 +316,34 @@ ngx_rtsig_process_events(ngx_cycle_t *cycle, ngx_msec_t timer, ngx_uint_t flags) ngx_log_debug1(NGX_LOG_DEBUG_EVENT, cycle->log, err, "rtsig signo:%d", signo); + if (flags & NGX_UPDATE_TIME) { + ngx_time_update(0, 0); + } + if (err == NGX_EAGAIN) { - if (timer == NGX_TIMER_INFINITE) { - ngx_log_error(NGX_LOG_ALERT, cycle->log, err, - "sigtimedwait() returned EAGAIN without timeout"); - return NGX_ERROR; - } + /* timeout */ - err = 0; + if (timer != NGX_TIMER_INFINITE) { + return NGX_AGAIN; + } + + ngx_log_error(NGX_LOG_ALERT, cycle->log, err, + "sigtimedwait() returned EAGAIN without timeout"); + return NGX_ERROR; } - } else { - err = 0; - ngx_log_debug3(NGX_LOG_DEBUG_EVENT, cycle->log, 0, - "rtsig signo:%d fd:%d band:%04Xd", - signo, si.si_fd, si.si_band); - } - - delta = ngx_current_msec; - - if (flags & NGX_UPDATE_TIME) { - ngx_time_update(0, 0); - } - - if (err) { ngx_log_error((err == NGX_EINTR) ? NGX_LOG_INFO : NGX_LOG_ALERT, cycle->log, err, "sigtimedwait() failed"); return NGX_ERROR; } - if (timer != NGX_TIMER_INFINITE) { - delta = ngx_current_msec - delta; + ngx_log_debug3(NGX_LOG_DEBUG_EVENT, cycle->log, 0, + "rtsig signo:%d fd:%d band:%04Xd", + signo, si.si_fd, si.si_band); - ngx_log_debug2(NGX_LOG_DEBUG_EVENT, cycle->log, 0, - "rtsig timer: %M, delta: %M", timer, delta); + if (flags & NGX_UPDATE_TIME) { + ngx_time_update(0, 0); } rtscf = ngx_event_get_conf(ngx_cycle->conf_ctx, ngx_rtsig_module); @@ -400,8 +392,12 @@ ngx_rtsig_process_events(ngx_cycle_t *cycle, ngx_msec_t timer, ngx_uint_t flags) wev->handler(wev); } + return NGX_OK; + } else if (signo == SIGALRM) { + ngx_time_update(0, 0); + return NGX_OK; } else if (signo == SIGIO) { @@ -431,18 +427,12 @@ ngx_rtsig_process_events(ngx_cycle_t *cycle, ngx_msec_t timer, ngx_uint_t flags) return NGX_ERROR; - } else if (signo != -1) { - ngx_log_error(NGX_LOG_ALERT, cycle->log, 0, - "sigtimedwait() returned unexpected signal: %d", signo); - - return NGX_ERROR; } - if (signo != -1) { - return NGX_OK; - } + ngx_log_error(NGX_LOG_ALERT, cycle->log, 0, + "sigtimedwait() returned unexpected signal: %d", signo); - return NGX_AGAIN; + return NGX_ERROR; } diff --git a/src/event/modules/ngx_select_module.c b/src/event/modules/ngx_select_module.c index da4303def..57f6f0500 100644 --- a/src/event/modules/ngx_select_module.c +++ b/src/event/modules/ngx_select_module.c @@ -250,7 +250,6 @@ ngx_select_process_events(ngx_cycle_t *cycle, ngx_msec_t timer, int ready, nready; ngx_uint_t i, found; ngx_err_t err; - ngx_msec_t delta; ngx_event_t *ev, **queue; ngx_connection_t *c; struct timeval tv, *tp; @@ -331,26 +330,10 @@ ngx_select_process_events(ngx_cycle_t *cycle, ngx_msec_t timer, err = 0; } - delta = ngx_current_msec; - if (flags & NGX_UPDATE_TIME) { ngx_time_update(0, 0); } - if (timer != NGX_TIMER_INFINITE) { - delta = ngx_current_msec - delta; - - ngx_log_debug2(NGX_LOG_DEBUG_EVENT, cycle->log, 0, - "select timer: %M, delta: %M", timer, delta); - - } else { - if (ready == 0) { - ngx_log_error(NGX_LOG_ALERT, cycle->log, 0, - "select() returned no events without timeout"); - return NGX_ERROR; - } - } - ngx_log_debug1(NGX_LOG_DEBUG_EVENT, cycle->log, 0, "select ready %d", ready); @@ -383,8 +366,14 @@ ngx_select_process_events(ngx_cycle_t *cycle, ngx_msec_t timer, #endif - if (nevents == 0) { - return NGX_OK; + if (ready == 0) { + if (timer != NGX_TIMER_INFINITE) { + return NGX_OK; + } + + ngx_log_error(NGX_LOG_ALERT, cycle->log, 0, + "select() returned no events without timeout"); + return NGX_ERROR; } ngx_mutex_lock(ngx_posted_events_mutex); |