summaryrefslogtreecommitdiffhomepage
path: root/src/os/unix (follow)
AgeCommit message (Collapse)AuthorFilesLines
2011-12-14Merge of r4284:Maxim Dounin1-0/+1
Introduction of simple ngx_write_stderr() instead of ngx_log_stderr() for output of ./configure options, etc., since ngx_log_stderr() output length is limited by 2048 characters defined as NGX_MAX_ERROR_STR.
2011-12-14Merge of r4231, r4300, r4303, r4304:Maxim Dounin1-1/+1
Configure/build changes and fixes: *) Revamped "configure --help" text. *) FreeBSD 10-current has recently gotten POSIX_FADV_* macros. A fix for the broken build applied. *) AIX 7 defines sys_nerr in errno.h, therefore <errno.h> included in the sys_nerr test. When sys_nerr and _sys_nerr are missed on a particular platform and our euristic for a maximum errno detection applied always print the maximum errno number we reached instead of printing void. This makes possible to build nginx on AIX 7.1. *) Made it possible to build/install from the SVN checkout.
2011-12-14Merge of r4227, r4228:Maxim Dounin2-12/+5
Fixed range checking for the "somaxconn" sysctl. Fixed port range checking.
2011-12-13Merge of r4221, r4222:Maxim Dounin1-4/+14
Fixed unix ngx_write_chain_to_file() to return total bytes written. Previously result of last iteration's writev() was returned. This was unnoticed as return value was only used if chain contained only one or two buffers.
2011-11-01Merging r4132, r4134, r4143, r4183, r4191, r4199:Igor Sysoev5-5/+6
Various fixes related to error messages: *) Removed old warning that suggested to use "server_name_in_redirect off" (now the default) in place of no longer supported "server_name *". *) Fixing directive name in error message if types hash size is not enough. *) Replaced "can not" with "cannot" and "could not" in a bunch of places. Fixed nearby grammar errors. *) Overhauled error messages.
2011-11-01Merging r4020:Igor Sysoev1-2/+7
SIGWINCH/NOACCEPT signal is disabled now in non-daemon mode. Non-daemon mode is currently used by supervisord, daemontools and so on or during debugging. The NOACCEPT signal is only used for online upgrade which is not supported when nginx is run under supervisord, etc., so this change should not break existant setups.
2011-11-01Merging r4017:Igor Sysoev2-10/+0
Move SO_ACCEPTFILTER and TCP_DEFER_ACCEPT checks into configure. NetBSD 5.0+ has SO_ACCEPTFILTER support merged from FreeBSD, and having accept filter check in FreeBSD-specific ngx_freebsd_config.h prevents it from being used on NetBSD. Therefore move the check into configure (and do the same for Linux-specific TCP_DEFER_ACCEPT, just to be in line).
2011-09-30Merging r4130, r4131, r4135:Igor Sysoev1-9/+7
Linux AIO related fixes: *) Fixing Linux AIO syscalls return value handling: syscall(2) uses usual libc convention, it returns -1 on error and sets errno. Obsolete _syscall(2) returns negative value of error. *) Fixing Linux AIO initiatialization: AIO operations are disabled if kernel does not support them. Previously worker just exited. *) The "worker_aio_requests" directive. 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-30Merging r4098:Igor Sysoev1-0/+2
In Mac OS X Lion, Apple deprecated the use of the system OpenSSL library in favour of their CommonCrypto library. This change adds a work-around that allows nginx to still be built on Lion with OpenSSL.
2011-09-30Merging r4077, r4101, r4102:Igor Sysoev2-0/+7
open_file_cache related fixes: *) Bugfix: open_file_cache lost is_directio flag. On file retest open_file_cache lost is_directio if file wasn't changed. This caused unaligned operations under Linux to fail with EINVAL. It wasn't noticeable with AIO though, as errors wasn't properly logged. *) Bugfix: open_file_cache did not update file info on retest. If file inode was not changed, cached file information was not updated on retest. As a result stale information might be cached forever if file attributes was changed and/or file was extended.
2011-08-29Merge of r3966, r3967, r3968, r3969, r3970, r3971:Igor Sysoev1-0/+1
Cache loader improvements: The cache loader performs two tasks: inserting cache objects in inactivity list and evaluating total cache size. Reading just directory is enough for this purpose. Elimination of reading cache files saves at least one disk I/O operation per file.
2011-05-16"$apr1", "{PLAIN}", and "{SSHA}" password methods in auth basic moduleIgor Sysoev2-3/+3
patch by Maxim Dounin
2011-05-10use POSIX semaphores in shmtx instead of sched_yield()Igor Sysoev5-0/+25
number of spinlock spins are increased twice
2011-04-23revert r3864, it may cause kernel panic on some kernels while working with IPv6Igor Sysoev1-1/+1
2011-04-22Use more precise stat.st_blocks to account cache size on UnixIgor Sysoev1-0/+1
instead of file length rounded to a file system block size. There is no similar way on Windows, so rounding to a cache->bsize is kept.
2011-02-17use backlog -1 on LinuxIgor Sysoev1-1/+1
thanks to Andrei Nigmatulin
2011-02-11set current atime while setting mtimeIgor Sysoev1-1/+1
patch by Andrei Nigmatulin
2010-12-13allow "env" to work in the single process modeIgor Sysoev1-0/+5
2010-11-29allocate last zero byte in ngx_crypt()Igor Sysoev1-4/+4
2010-11-25use copied strerror() messages and autoconfigured sys_nerr valueIgor Sysoev3-63/+64
2010-11-25Linux accept4() supportIgor Sysoev1-1/+1
2010-10-12update event flags after successful io_submit()Igor Sysoev1-0/+4
2010-09-15worker_rlimit_core should be off_tIgor Sysoev1-2/+2
2010-07-08fix typoIgor Sysoev1-1/+1
2010-07-08style fixIgor Sysoev1-4/+4
2010-07-03HP/UX uses EWOULDBLOCK instead of EAGAINIgor Sysoev1-1/+5
2010-06-30fix ngx_write_file() bufIgor Sysoev1-2/+2
2010-06-29ngx_create_file_mapping()Igor Sysoev2-0/+65
2010-06-23style fixIgor Sysoev3-6/+6
2010-04-22use lstat() for WebDAV DELETE, COPY, and MOVE to handle symlinksIgor Sysoev1-0/+3
2010-04-21use non-blocking open() not to hang on FIFO files, etc.Igor Sysoev1-0/+1
2010-03-26use "rep; nop" instead of "pause" on Solaris/amd64Igor Sysoev1-1/+6
2010-03-25*) introduce ngx_time_sigsafe_update() to update the error log time onlyIgor Sysoev2-4/+4
*) change ngx_time_update() interface
2010-03-13*) use previously cached GMT offset value to update time from a signal handlerIgor Sysoev2-4/+4
*) change ngx_time_update() interface since there are no notification methods those return time
2010-03-12use sys_errlist[] in signal handler insteadIgor Sysoev2-6/+19
of non Async-Signal-Safe strerror_r()
2009-12-22fix building by gcc 4.x with -O2/3/s in some Linux distributions:Igor Sysoev1-2/+15
dereferencing type-punned pointer will break strict-aliasing rules
2009-12-07fix libatomic usage on arm, cris, hppa, m68k, and sparc platformsIgor Sysoev1-0/+1
2009-11-25fix commentIgor Sysoev1-1/+1
2009-11-25libatomic_ops supportIgor Sysoev1-1/+25
2009-11-25GCC 4.1 builtin atomic operationsIgor Sysoev1-5/+32
2009-11-23add NGX_PROCESS_HELPER process statusIgor Sysoev3-4/+8
2009-11-16fix building without --with-debug, introduced in r3328Igor Sysoev1-2/+2
2009-11-16add alignment in debug logIgor Sysoev1-2/+2
2009-11-15fix posix_fadvise() error handlingIgor Sysoev2-1/+21
2009-11-15update allocation error messagesIgor Sysoev1-5/+3
2009-11-15fix posix_memalign() error handlingIgor Sysoev1-2/+6
2009-11-11fix building without --with-debug, introduced in r3294Igor Sysoev1-1/+1
2009-11-05delete useless statementIgor Sysoev1-2/+0
2009-11-05export aio presence knowledge to prevent using "aio sendfile",Igor Sysoev4-13/+20
if aio does not present
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.