comparison src/event/modules/ngx_kqueue_module.c @ 3587:e1409e56ba7c stable-0.7

merge r3473, r3474, r3385, r3386, r3537: signal processing stability: *) use sys_errlist[] in signal handler instead of non Async-Signal-Safe strerror_r() *) do not update time in the timer signal handler, since localtime_r() is not Async-Signal-Safe function *) use previously cached GMT offset value to update time from a signal handler *) change ngx_time_update() interface since there are no notification methods those return time *) introduce ngx_time_sigsafe_update() to update the error log time only *) change ngx_time_update() interface
author Igor Sysoev <igor@sysoev.ru>
date Mon, 07 Jun 2010 10:35:08 +0000
parents 2efa8d2fcde1
children
comparison
equal deleted inserted replaced
3586:2d21e02fc01d 3587:e1409e56ba7c
541 err = ngx_errno; 541 err = ngx_errno;
542 } else { 542 } else {
543 err = 0; 543 err = 0;
544 } 544 }
545 545
546 if (flags & NGX_UPDATE_TIME) { 546 if (flags & NGX_UPDATE_TIME || ngx_event_timer_alarm) {
547 ngx_time_update(0, 0); 547 ngx_time_update();
548 } 548 }
549 549
550 ngx_log_debug1(NGX_LOG_DEBUG_EVENT, cycle->log, 0, 550 ngx_log_debug1(NGX_LOG_DEBUG_EVENT, cycle->log, 0,
551 "kevent events: %d", events); 551 "kevent events: %d", events);
552 552
593 } 593 }
594 594
595 #if (NGX_HAVE_TIMER_EVENT) 595 #if (NGX_HAVE_TIMER_EVENT)
596 596
597 if (event_list[i].filter == EVFILT_TIMER) { 597 if (event_list[i].filter == EVFILT_TIMER) {
598 ngx_time_update(0, 0); 598 ngx_time_update();
599 continue; 599 continue;
600 } 600 }
601 601
602 #endif 602 #endif
603 603