<feed xmlns='http://www.w3.org/2005/Atom'>
<title>nginx.git/src/os, branch release-1.0.7</title>
<subtitle>nginx</subtitle>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/'/>
<entry>
<title>Merging r4130, r4131, r4135:</title>
<updated>2011-09-30T14:12:53+00:00</updated>
<author>
<name>Igor Sysoev</name>
<email>igor@sysoev.ru</email>
</author>
<published>2011-09-30T14:12:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=287e2cae6dcce09bcfa464e87edd65c602811d16'/>
<id>287e2cae6dcce09bcfa464e87edd65c602811d16</id>
<content type='text'>
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.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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.
</pre>
</div>
</content>
</entry>
<entry>
<title>Merging r4098:</title>
<updated>2011-09-30T14:09:44+00:00</updated>
<author>
<name>Igor Sysoev</name>
<email>igor@sysoev.ru</email>
</author>
<published>2011-09-30T14:09:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=6f23d1a5817fd7e15d643d5ed8ddbbe37cfd6664'/>
<id>6f23d1a5817fd7e15d643d5ed8ddbbe37cfd6664</id>
<content type='text'>
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.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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.
</pre>
</div>
</content>
</entry>
<entry>
<title>Merging r4077, r4101, r4102:</title>
<updated>2011-09-30T13:57:44+00:00</updated>
<author>
<name>Igor Sysoev</name>
<email>igor@sysoev.ru</email>
</author>
<published>2011-09-30T13:57:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=66ef8eba590ab96429356650297e173f41396eff'/>
<id>66ef8eba590ab96429356650297e173f41396eff</id>
<content type='text'>
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.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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.
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge of r4018:</title>
<updated>2011-08-29T13:11:47+00:00</updated>
<author>
<name>Igor Sysoev</name>
<email>igor@sysoev.ru</email>
</author>
<published>2011-08-29T13:11:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=ee7216bfa68ecc204f4a9b9154f18a9f284a7c3a'/>
<id>ee7216bfa68ecc204f4a9b9154f18a9f284a7c3a</id>
<content type='text'>
Fix buffer overrun under Windows.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Fix buffer overrun under Windows.
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge of r3966, r3967, r3968, r3969, r3970, r3971:</title>
<updated>2011-08-29T09:51:56+00:00</updated>
<author>
<name>Igor Sysoev</name>
<email>igor@sysoev.ru</email>
</author>
<published>2011-08-29T09:51:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=34f579fb6d3c6582a685e65265f332fa8cf83fe8'/>
<id>34f579fb6d3c6582a685e65265f332fa8cf83fe8</id>
<content type='text'>
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.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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.
</pre>
</div>
</content>
</entry>
<entry>
<title>"$apr1", "{PLAIN}", and "{SSHA}" password methods in auth basic module</title>
<updated>2011-05-16T14:54:50+00:00</updated>
<author>
<name>Igor Sysoev</name>
<email>igor@sysoev.ru</email>
</author>
<published>2011-05-16T14:54:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=5dc5945ccf6e64b7b36bb620f4b24e6fdb2364b1'/>
<id>5dc5945ccf6e64b7b36bb620f4b24e6fdb2364b1</id>
<content type='text'>
patch by Maxim Dounin
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
patch by Maxim Dounin
</pre>
</div>
</content>
</entry>
<entry>
<title>use POSIX semaphores in shmtx instead of sched_yield()</title>
<updated>2011-05-10T11:39:13+00:00</updated>
<author>
<name>Igor Sysoev</name>
<email>igor@sysoev.ru</email>
</author>
<published>2011-05-10T11:39:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=e2c8ad71221ebcf5ca6331811118f9a6d18aec45'/>
<id>e2c8ad71221ebcf5ca6331811118f9a6d18aec45</id>
<content type='text'>
number of spinlock spins are increased twice
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
number of spinlock spins are increased twice
</pre>
</div>
</content>
</entry>
<entry>
<title>revert r3864, it may cause kernel panic on some kernels while working with IPv6</title>
<updated>2011-04-23T17:27:55+00:00</updated>
<author>
<name>Igor Sysoev</name>
<email>igor@sysoev.ru</email>
</author>
<published>2011-04-23T17:27:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=2bd01a0f0196d7915e8bf54f4966ad240593564b'/>
<id>2bd01a0f0196d7915e8bf54f4966ad240593564b</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Use more precise stat.st_blocks to account cache size on Unix</title>
<updated>2011-04-22T10:06:43+00:00</updated>
<author>
<name>Igor Sysoev</name>
<email>igor@sysoev.ru</email>
</author>
<published>2011-04-22T10:06:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=ef1f33b0db5a69afeb4272668089ed5f760aea68'/>
<id>ef1f33b0db5a69afeb4272668089ed5f760aea68</id>
<content type='text'>
instead of file length rounded to a file system block size.
There is no similar way on Windows, so rounding to a cache-&gt;bsize is kept.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
instead of file length rounded to a file system block size.
There is no similar way on Windows, so rounding to a cache-&gt;bsize is kept.
</pre>
</div>
</content>
</entry>
<entry>
<title>use backlog -1 on Linux</title>
<updated>2011-02-17T14:14:50+00:00</updated>
<author>
<name>Igor Sysoev</name>
<email>igor@sysoev.ru</email>
</author>
<published>2011-02-17T14:14:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=95899a3f19df162fcac3a15d280fed9c7928025a'/>
<id>95899a3f19df162fcac3a15d280fed9c7928025a</id>
<content type='text'>
thanks to Andrei Nigmatulin
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
thanks to Andrei Nigmatulin
</pre>
</div>
</content>
</entry>
</feed>
