Mercurial > hg > nginx-quic
annotate misc/README @ 5970:74edc0ccf27a
Core: fixed a race resulting in extra sem_post()'s.
The mtx->wait counter was not decremented if we were able to obtain the lock
right after incrementing it. This resulted in unneeded sem_post() calls,
eventually leading to EOVERFLOW errors being logged, "sem_post() failed
while wake shmtx (75: Value too large for defined data type)".
To close the race, mtx->wait is now decremented if we obtain the lock right
after incrementing it in ngx_shmtx_lock(). The result can become -1 if a
concurrent ngx_shmtx_unlock() decrements mtx->wait before the added code does.
However, that only leads to one extra iteration in the next call of
ngx_shmtx_lock().
author | Roman Arutyunyan <arut@nginx.com> |
---|---|
date | Wed, 04 Feb 2015 16:22:43 +0300 |
parents | 001beb963d86 |
children |
rev | line source |
---|---|
681 | 1 |
2 make -f misc/GNUmakefile release | |
3 | |
4 the required tools: | |
5 *) xsltproc to build CHANGES, | |
5663
001beb963d86
Documented the switch from java XSLScript to xslscript.pl.
Ruslan Ermilov <ru@nginx.com>
parents:
5212
diff
changeset
|
6 *) xslscript.pl ( http://hg.nginx.org/xslscript ) to build XSLTs |
681 | 7 from XSLScript sources. |
8 | |
9 | |
10 make -f misc/GNUmakefile icons | |
11 | |
12 the required tool: | |
13 *) netpbm to create Win32 icons from xpm sources. |