Mercurial > hg > nginx
diff src/event/modules/ngx_kqueue_module.c @ 114:ac69ab96328d
nginx-0.0.1-2003-07-07-10:11:50 import
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Mon, 07 Jul 2003 06:11:50 +0000 |
parents | d7f606e25b99 |
children | ef8c87afcfc5 |
line wrap: on
line diff
--- a/src/event/modules/ngx_kqueue_module.c Fri Jul 04 15:10:33 2003 +0000 +++ b/src/event/modules/ngx_kqueue_module.c Mon Jul 07 06:11:50 2003 +0000 @@ -23,8 +23,8 @@ static int ngx_kqueue_set_event(ngx_event_t *ev, int filter, u_int flags); static int ngx_kqueue_process_events(ngx_log_t *log); -static void *ngx_kqueue_create_conf(ngx_pool_t *pool); -static char *ngx_kqueue_init_conf(ngx_pool_t *pool, void *conf); +static void *ngx_kqueue_create_conf(ngx_cycle_t *cycle); +static char *ngx_kqueue_init_conf(ngx_cycle_t *cycle, void *conf); int ngx_kqueue = -1; @@ -311,6 +311,7 @@ static int ngx_kqueue_process_events(ngx_log_t *log) { int events, instance, i; + ngx_err_t err; ngx_msec_t timer, delta; ngx_event_t *ev; struct timeval tv; @@ -338,8 +339,9 @@ events = kevent(ngx_kqueue, change_list, nchanges, event_list, nevents, tp); if (events == -1) { - ngx_log_error(NGX_LOG_ALERT, log, ngx_errno, "kevent() failed"); - return NGX_ERROR; + err = ngx_errno; + } else { + err = 0; } nchanges = 0; @@ -348,6 +350,10 @@ gettimeofday(&tv, NULL); delta = tv.tv_sec * 1000 + tv.tv_usec / 1000 - delta; +#if (NGX_DEBUG_EVENT) + ngx_log_debug(log, "kevent timer: %d, delta: %d" _ timer _ delta); +#endif + /* The expired timers must be handled before a processing of the events because the new timers can be added during a processing */ @@ -359,11 +365,16 @@ "kevent() returned no events without timeout"); return NGX_ERROR; } - } #if (NGX_DEBUG_EVENT) - ngx_log_debug(log, "kevent timer: %d, delta: %d" _ timer _ delta); + ngx_log_debug(log, "kevent timer: %d, delta: %d" _ timer _ delta); #endif + } + + if (err) { + ngx_log_error(NGX_LOG_ALERT, log, err, "kevent() failed"); + return NGX_ERROR; + } for (i = 0; i < events; i++) { @@ -439,11 +450,11 @@ } -static void *ngx_kqueue_create_conf(ngx_pool_t *pool) +static void *ngx_kqueue_create_conf(ngx_cycle_t *cycle) { ngx_kqueue_conf_t *kcf; - ngx_test_null(kcf, ngx_palloc(pool, sizeof(ngx_kqueue_conf_t)), + ngx_test_null(kcf, ngx_palloc(cycle->pool, sizeof(ngx_kqueue_conf_t)), NGX_CONF_ERROR); kcf->changes = NGX_CONF_UNSET; @@ -453,7 +464,7 @@ } -static char *ngx_kqueue_init_conf(ngx_pool_t *pool, void *conf) +static char *ngx_kqueue_init_conf(ngx_cycle_t *cycle, void *conf) { ngx_kqueue_conf_t *kcf = conf;