comparison src/event/modules/ngx_kqueue_module.c @ 10:46833bd150cb NGINX_0_1_5

nginx 0.1.5 *) Bugfix: on Solaris and Linux there may be too many "recvmsg() returned not enough data" alerts. *) Bugfix: there were the "writev() failed (22: Invalid argument)" errors on Solaris in proxy mode without sendfile. On other platforms that do not support sendfile at all the process got caught in an endless loop. *) Bugfix: segmentation fault on Solaris in proxy mode and using sendfile. *) Bugfix: segmentation fault on Solaris. *) Bugfix: on-line upgrade did not work on Linux. *) Bugfix: the ngx_http_autoindex_module module did not escape the spaces, the quotes, and the percent signs in the directory listing. *) Change: the decrease of the copy operations. *) Feature: the userid_p3p directive.
author Igor Sysoev <http://sysoev.ru>
date Thu, 11 Nov 2004 00:00:00 +0300
parents 4b2dafa26fe2
children 6f8b0dc0f8dd
comparison
equal deleted inserted replaced
9:77eee314ddbd 10:46833bd150cb
365 ngx_connection_t *c; 365 ngx_connection_t *c;
366 366
367 c = ev->data; 367 c = ev->data;
368 368
369 ngx_log_debug3(NGX_LOG_DEBUG_EVENT, c->log, 0, 369 ngx_log_debug3(NGX_LOG_DEBUG_EVENT, c->log, 0,
370 "kevent set event: %d: ft:%d fl:%04X", 370 "kevent set event: %d: ft:%d fl:%04Xd",
371 c->fd, filter, flags); 371 c->fd, filter, flags);
372 372
373 if (nchanges >= max_changes) { 373 if (nchanges >= max_changes) {
374 ngx_log_error(NGX_LOG_WARN, ev->log, 0, 374 ngx_log_error(NGX_LOG_WARN, ev->log, 0,
375 "kqueue change list is filled up"); 375 "kqueue change list is filled up");
597 * the stale event from a file descriptor 597 * the stale event from a file descriptor
598 * that was just closed in this iteration 598 * that was just closed in this iteration
599 */ 599 */
600 600
601 ngx_log_debug1(NGX_LOG_DEBUG_EVENT, cycle->log, 0, 601 ngx_log_debug1(NGX_LOG_DEBUG_EVENT, cycle->log, 0,
602 "kevent: stale event " PTR_FMT, ev); 602 "kevent: stale event %p", ev);
603 continue; 603 continue;
604 } 604 }
605 605
606 if (ev->log && (ev->log->log_level & NGX_LOG_DEBUG_CONNECTION)) { 606 if (ev->log && (ev->log->log_level & NGX_LOG_DEBUG_CONNECTION)) {
607 ngx_kqueue_dump_event(ev->log, &event_list[i]); 607 ngx_kqueue_dump_event(ev->log, &event_list[i]);
774 774
775 static ngx_inline void ngx_kqueue_dump_event(ngx_log_t *log, struct kevent *kev) 775 static ngx_inline void ngx_kqueue_dump_event(ngx_log_t *log, struct kevent *kev)
776 { 776 {
777 ngx_log_debug6(NGX_LOG_DEBUG_EVENT, log, 0, 777 ngx_log_debug6(NGX_LOG_DEBUG_EVENT, log, 0,
778 (kev->ident > 0x8000000 && kev->ident != (unsigned) -1) ? 778 (kev->ident > 0x8000000 && kev->ident != (unsigned) -1) ?
779 "kevent: " PTR_FMT ": ft:%d fl:%04X ff:%08X d:%d ud:" 779 "kevent: %p: ft:%d fl:%04Xd ff:%08Xd d:%d ud:%p":
780 PTR_FMT: 780 "kevent: %d: ft:%d fl:%04Xd ff:%08Xd d:%d ud:%p",
781 "kevent: %d: ft:%d fl:%04X ff:%08X d:%d ud:" PTR_FMT,
782 kev->ident, kev->filter, 781 kev->ident, kev->filter,
783 kev->flags, kev->fflags, 782 kev->flags, kev->fflags,
784 kev->data, kev->udata); 783 kev->data, kev->udata);
785 } 784 }
786 785