diff options
author | Igor Sysoev <igor@sysoev.ru> | 2005-10-21 19:12:18 +0000 |
---|---|---|
committer | Igor Sysoev <igor@sysoev.ru> | 2005-10-21 19:12:18 +0000 |
commit | 055951dc96d1ba9457cdce04bad60fe50b6ea7be (patch) | |
tree | 1ed865f8a532be30837787ff3ee0305f4d86596a /src/event/modules/ngx_epoll_module.c | |
parent | b6b31c91be09794b3689bb705b29cc8cb2f7258a (diff) | |
download | nginx-055951dc96d1ba9457cdce04bad60fe50b6ea7be.tar.gz |
nginx-0.3.5-RELEASE importrelease-0.3.5
*) Bugfix: the segmentation fault may occurred if the IMAP/POP3 login
was changed by authorization server; the bug had appeared in 0.2.2.
*) Bugfix: the accept mutex did not work and all connections were
handled by one process; the bug had appeared in 0.3.3.
*) Bugfix: the timeout did not work if the "rtsig" method and the
"timer_resolution" directive were used.
Diffstat (limited to 'src/event/modules/ngx_epoll_module.c')
-rw-r--r-- | src/event/modules/ngx_epoll_module.c | 24 |
1 files changed, 7 insertions, 17 deletions
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); |