summaryrefslogtreecommitdiffhomepage
path: root/src/os/unix/ngx_process_cycle.c (follow)
AgeCommit message (Collapse)AuthorFilesLines
2015-03-20Removed unix ngx_threaded and related ngx_process_changes.Ruslan Ermilov1-1/+0
2015-03-20Removed old pthread implementation.Ruslan Ermilov1-188/+0
2015-03-04Renamed NGX_THREADS to NGX_OLD_THREADS because of deprecation.Ruslan Ermilov1-5/+5
It's mostly dead code and the original idea of worker threads has been rejected.
2014-08-13Events: introduced cancelable timers.Valentin Bartenev1-0/+2
2014-08-25Events: removed broken thread support from event timers.Valentin Bartenev1-1/+0
It's mostly dead code. And the idea of thread support for this task has been deprecated.
2014-09-01Events: removed broken thread support from posted events.Valentin Bartenev1-5/+4
It's mostly dead code. And the idea of thread support for this task has been deprecated.
2014-08-01Core: exit on ngx_pnalloc() failure.Piotr Sikora1-0/+4
Signed-off-by: Piotr Sikora <piotr@cloudflare.com>
2014-05-12Added syslog support for error_log and access_log directives.Vladimir Homutov1-4/+7
2014-03-06Added connection serial number in logging of left open sockets.Sergey Kandaurov1-2/+2
2014-01-04Added per-process random seeding (ticket #456).Maxim Dounin1-0/+2
2013-07-11Style.Maxim Dounin1-1/+1
2013-06-20Core: support several "error_log" directives.Vladimir Homutov1-0/+2
When several "error_log" directives are specified in the same configuration block, logs are written to all files with a matching log level. All logs are stored in the singly-linked list that is sorted by log level in the descending order. Specific debug levels (NGX_LOG_DEBUG_HTTP,EVENT, etc.) are not supported if several "error_log" directives are specified. In this case all logs will use debug level that has largest absolute value.
2013-06-05Valgrind: supressed complaints about uninitialized bytes.Maxim Dounin1-0/+8
Valgrind complains if we pass uninitialized memory to a syscall: ==36492== Syscall param sendmsg(msg.msg_iov[0]) points to uninitialised byte(s) ==36492== at 0x6B5E6A: sendmsg (in /usr/lib/system/libsystem_kernel.dylib) ==36492== by 0x10004288E: ngx_signal_worker_processes (ngx_process_cycle.c:527) ==36492== by 0x1000417A7: ngx_master_process_cycle (ngx_process_cycle.c:203) ==36492== by 0x100001F10: main (nginx.c:410) ==36492== Address 0x7fff5fbff71c is on thread 1's stack Even initialization of all members of the structure passed isn't enough, as there is padding which still remains uninitialized and results in Valgrind complaint. Note there is no real problem here as data from uninitialized memory isn't used.
2013-03-25Use NGX_FILE_ERROR for handling file operations errors.Valentin Bartenev1-1/+1
On Win32 platforms 0 is used to indicate errors in file operations, so comparing against -1 is not portable. This was not much of an issue in patched code, since only ngx_fd_info() test is actually reachable on Win32 and in worst case it might result in bogus error log entry. Patch by Piotr Sikora.
2012-11-20Fixed failure to start cache manager and cache loader processesIgor Sysoev1-4/+9
if there were more than 512 listening sockets in configuration.
2012-11-16Fixed setting of CPU affinity on respawn of dead worker processes.Ruslan Ermilov1-14/+16
Worker processes are now made aware of their sequential number needed to select CPU affinity mask. This replaces a workaround from r4865.
2012-09-28Correct plural form for "path" in the whole source base.Andrey Belov1-6/+6
2012-09-26Added clearing of cpu_affinity after process spawn.Maxim Dounin1-0/+2
This fixes unwanted/incorrect cpu_affinity use on dead worker processes respawn. While this is not ideal, it's expected to be better when previous situation where multiple processes were spawn with identical CPU affinity set. Reported by Charles Chen.
2012-06-18Fixed segfault with poll and resolver used.Maxim Dounin1-0/+4
Poll event method needs ngx_cycle->files to work, and use of ngx_exit_cycle without files set caused null pointer dereference in resolver's cleanup on udp socket close.
2012-03-21worker_cpu_affinity: cleaned up Linux implementation, added FreeBSD support.Ruslan Ermilov1-15/+2
2012-02-28Added msleep() on reload to allow new processes to start.Maxim Dounin1-0/+4
This is expected to ensure smoother operation on reload (and with less chance of listen queue overflows). Prodded by Igor Sysoev.
2012-01-18Copyright updated.Maxim Konovalov1-0/+1
2012-01-16Fixed sched_setaffinity(2) to correctly pass size.Maxim Dounin1-1/+4
Second argument (cpusetsize) is size in bytes, not in bits. Previously used constant 32 resulted in reading of uninitialized memory and caused EINVAL to be returned on some Linux kernels.
2011-09-19Replaced "can not" with "cannot" and "could not" in a bunch of places.Ruslan Ermilov1-1/+2
Fixed nearby grammar errors.
2010-12-13allow "env" to work in the single process modeIgor Sysoev1-0/+5
2010-09-15worker_rlimit_core should be off_tIgor Sysoev1-2/+2
2010-03-25*) introduce ngx_time_sigsafe_update() to update the error log time onlyIgor Sysoev1-3/+3
*) change ngx_time_update() interface
2010-03-13*) use previously cached GMT offset value to update time from a signal handlerIgor Sysoev1-3/+3
*) change ngx_time_update() interface since there are no notification methods those return time
2009-11-23add NGX_PROCESS_HELPER process statusIgor Sysoev1-2/+4
2009-11-11fix building without --with-debug, introduced in r3294Igor Sysoev1-1/+1
2009-11-04Fix a bug introduced in r2032: After a child process has read a terminateIgor Sysoev1-2/+12
message from a channel, the process tries to read the channel again. The kernel (at least FreeBSD) may preempt the process and sends a SIGIO signal to a master process. The master process sends a new terminate message, the kernel switches again to the the child process, and the child process reads the messages instead of an EAGAIN error. And this may repeat over and over. Being that the child process can not exit the cycle and test the termination flag set by the message handler. The fix disallow the master process to send a new terminate message on SIGIO signal reception. It may send the message only on SIGALARM signal.
2009-10-26http listen unix domain socketsIgor Sysoev1-0/+2
2009-08-26twice termination delay only after SIGALRM, otherwise many separate SIGCHLDIgor Sysoev1-1/+5
and SIGIO signals quickly increase delay to the level when SIGKILL is sent
2009-08-26style fixIgor Sysoev1-2/+1
2009-08-26fix typoIgor Sysoev1-1/+1
2009-08-21*) share temporary number between workersIgor Sysoev1-4/+0
*) randomize collision offset
2009-08-13fix debug point for left open socketsIgor Sysoev1-3/+4
2009-08-10delete mistaken sleep in the previous commitIgor Sysoev1-2/+0
2009-08-10cache loader processIgor Sysoev1-61/+96
2009-08-10introduce NGX_PROCESS_JUST_SPAWN and change field name accordinglyIgor Sysoev1-4/+4
2009-03-30introduce cache manager instead of cache cleanerIgor Sysoev1-17/+17
2009-03-23a prelimiary proxy cache supportIgor Sysoev1-40/+66
2009-02-23fix messageIgor Sysoev1-1/+1
2008-06-17*) back out r2040Igor Sysoev1-1/+1
*) refactor ngx_palloc() *) introduce ngx_pnalloc() *) additional pool blocks have smaller header
2008-05-25read channel until EAGAINIgor Sysoev1-43/+47
2008-02-28left open sockets were not really testedIgor Sysoev1-5/+5
2008-02-19avoid endless loop if epoll is usedIgor Sysoev1-0/+5
2007-12-10move condition declarations inside blocks where they are usedIgor Sysoev1-6/+5
2007-10-18Cygwin can not pass SCM_RIGHTS via unix socket, use signalsIgor Sysoev1-0/+8
2007-10-16fix building broken in r1578Igor Sysoev1-1/+0