summaryrefslogtreecommitdiffhomepage
path: root/src/event/modules (follow)
AgeCommit message (Collapse)AuthorFilesLines
2012-04-03Fixed spelling in multiline C comments.Ruslan Ermilov3-4/+4
2012-01-18Copyright updated.Maxim Konovalov11-0/+11
2011-11-29Fixed AIO on Linux, broken in r4306.Maxim Dounin1-10/+10
Events from eventfd do not have c->write set, and the stale event check added in r4306 causes null pointer dereference.
2011-11-22Protection from stale write events in epoll.Maxim Dounin1-0/+12
Stale write event may happen if epoll_wait() reported both read and write events, and processing of the read event closed descriptor. Patch by Yichun Zhang (agentzh).
2011-09-20The "worker_aio_requests" directive.Igor Sysoev1-3/+13
The default value is 32 AIO simultaneous requests per worker. Previously they were hardcoded to 1024, and it was too large, since Linux allocated them early on io_setup(), but not on request itself. So with default value of /proc/sys/fs/aio-max-nr equal to 65536 only 64 worker processes could be run simultaneously. 32 AIO requests are enough for modern disks even if server runs only 1 worker.
2011-09-16Fixing Linux AIO initiatialization: AIO operations are disabled if kernelIgor Sysoev1-47/+82
does not support them. Previously worker just exited.
2011-09-16Fixing Linux AIO syscalls return value handling:Igor Sysoev1-10/+11
syscall(2) uses usual libc convention, it returns -1 on error and sets errno. Obsolete _syscall(2) returns negative value of error. Thanks to Hagai Avrahami.
2011-04-23fix building by gcc 4.6 without --with-debugIgor Sysoev1-10/+3
2010-03-25*) introduce ngx_time_sigsafe_update() to update the error log time onlyIgor Sysoev9-15/+15
*) change ngx_time_update() interface
2010-03-13*) use previously cached GMT offset value to update time from a signal handlerIgor Sysoev9-15/+15
*) change ngx_time_update() interface since there are no notification methods those return time
2010-03-12do not update time in the timer signal handler,Igor Sysoev5-5/+5
since localtime_r() is not Async-Signal-Safe function
2009-11-23add NGX_PROCESS_HELPER process statusIgor Sysoev3-3/+3
2009-08-28FreeBSD and Linux AIO supportIgor Sysoev1-0/+217
2009-08-25*) move small declarations in appropriate places and delete the surplusIgor Sysoev4-25/+2
header files *) delete insignificant comments
2009-08-25style fixIgor Sysoev7-32/+6
2009-06-02return NULL instead of NGX_CONF_ERROR on a create conf failureIgor Sysoev5-5/+5
2009-05-14style fixIgor Sysoev1-2/+4
2009-05-06divide select module into two modules: Unix and Win32 onesIgor Sysoev2-137/+404
2009-05-06make code clearerIgor Sysoev1-2/+4
2009-05-06test event type to prevent errorsIgor Sysoev1-0/+10
2009-04-29try to repair the case "select ready != events"Igor Sysoev1-1/+4
2009-04-29ngx_select_repair_fd_sets()Igor Sysoev1-0/+96
2009-04-29delete useless debug logIgor Sysoev1-10/+0
2009-04-29style fixIgor Sysoev1-6/+6
2009-04-29handle Winsock select() WSAEINVALIgor Sysoev1-1/+15
2008-06-23prepare to allow various number of connections in child processesIgor Sysoev2-6/+3
2008-05-22style fixIgor Sysoev1-1/+1
2008-03-13restore building --test-build-rtsig and --test-build-eventport on FreeBSD 6Igor Sysoev2-1/+16
2008-01-28fix building --test-build-rtsig and --test-build-eventport on FreeBSD 7Igor Sysoev2-10/+4
2007-12-10move condition declarations inside blocks where they are usedIgor Sysoev1-3/+2
2007-12-03ngx_udp_recv()Igor Sysoev2-0/+2
2007-09-01NGX_USE_VNODE_EVENT and NGX_FLUSH_EVENTIgor Sysoev1-5/+23
2007-08-31use ev->log, because ev->data may be connection stub onlyIgor Sysoev1-1/+1
2007-08-29add guard codeIgor Sysoev1-13/+59
2007-08-29fix commentIgor Sysoev1-1/+1
2007-08-29disable pair event on POLLREMOVEIgor Sysoev1-0/+6
2007-07-29make 64-bit ngx_int_t on 64-bit platformsIgor Sysoev10-131/+150
2007-07-11fix segfault when event port returns POLLERR without POLLIN or POLLOUTIgor Sysoev1-0/+4
2007-03-21fix building without --with-debug on SolarisIgor Sysoev1-1/+1
2007-03-06decrease log level from alert to debug for POLLERR|POLLHUP|POLLNVALIgor Sysoev2-4/+4
2007-01-11axe aio draftsIgor Sysoev1-58/+0
2007-01-11axe long ago unnecessary fileIgor Sysoev1-20/+0
2006-12-15fix typoIgor Sysoev1-1/+1
2006-10-09style fix: remove trailing spacesIgor Sysoev1-1/+1
2006-09-26Solaris 10 event ports supportIgor Sysoev1-0/+593
2006-09-22remove unused oneshot flagIgor Sysoev2-3/+0
2006-07-28nginx-0.3.55-RELEASE importrelease-0.3.55Igor Sysoev1-1/+1
*) Feature: the "stub" parameter in the "include" SSI command. *) Feature: the "block" SSI command. *) Feature: the unicode2nginx script was added to contrib. *) Bugfix: if a "root" was specified by variable only, then the root was relative to a server prefix. *) Bugfix: if the request contained "//" or "/./" and escaped symbols after them, then the proxied request was sent unescaped. *) Bugfix: the $r->headers_in("Cookie") of the ngx_http_perl_module now returns all "Cookie" header lines. *) Bugfix: a segmentation fault occurred if "client_body_in_file_only on" was used and nginx switched to a next upstream. *) Bugfix: on some condition while reconfiguration character codes inside the "charset_map" may be treated invalid; the bug had appeared in 0.3.50.
2006-07-07nginx-0.3.53-RELEASE importrelease-0.3.53Igor Sysoev2-3/+5
*) Change: the "add_header" directive adds the string to 204, 301, and 302 responses. *) Feature: the "server" directive in the "upstream" context supports the "weight" parameter. *) Feature: the "server_name" directive supports the "*" wildcard. *) Feature: nginx supports the request body size more than 2G. *) Bugfix: if a client was successfully authorized using "satisfy_any on", then anyway the message "access forbidden by rule" was written in the log. *) Bugfix: the "PUT" method may erroneously not create a file and return the 409 code. *) Bugfix: if the IMAP/POP3 backend returned an error, then nginx continued proxying anyway.
2006-03-15nginx-0.3.33-RELEASE importrelease-0.3.33Igor Sysoev1-5/+8
*) Feature: the "http_503" parameter of the "proxy_next_upstream" or "fastcgi_next_upstream" directives. *) Bugfix: ngx_http_perl_module did not work with inlined in the configuration code, if it was not started with the "sub" word. *) Bugfix: in the "post_action" directive.
2006-03-10nginx-0.3.31-RELEASE importrelease-0.3.31Igor Sysoev1-1/+10
*) Change: now nginx passes the malformed proxied backend responses. *) Feature: the "listen" directives support the address in the "*:port" form. *) Feature: the EVFILER_TIMER support in MacOSX 10.4. *) Workaround: for MacOSX 64-bit kernel kqueue millisecond timeout bug. Thanks to Andrei Nigmatulin. *) Bugfix: if there were several "listen" directives listening one various addresses inside one server, then server names like "*.domain.tld" worked for first address only; the bug had appeared in 0.3.18. *) Bugfix: if the HTTPS protocol was used in the "proxy_pass" directive and the request body was in temporarily file then the request was not transferred. *) Bugfix: perl 5.8.8 compatibility.