diff options
| author | Igor Sysoev <igor@sysoev.ru> | 2011-09-30 14:12:53 +0000 |
|---|---|---|
| committer | Igor Sysoev <igor@sysoev.ru> | 2011-09-30 14:12:53 +0000 |
| commit | 287e2cae6dcce09bcfa464e87edd65c602811d16 (patch) | |
| tree | b97f441e239dda59e3f81de0a0f83e1912ff9b52 /src/os/unix/ngx_process_cycle.c | |
| parent | 6f23d1a5817fd7e15d643d5ed8ddbbe37cfd6664 (diff) | |
| download | nginx-287e2cae6dcce09bcfa464e87edd65c602811d16.tar.gz nginx-287e2cae6dcce09bcfa464e87edd65c602811d16.tar.bz2 | |
Merging r4130, r4131, r4135:
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.
Diffstat (limited to 'src/os/unix/ngx_process_cycle.c')
0 files changed, 0 insertions, 0 deletions
