diff options
| author | Igor Sysoev <igor@sysoev.ru> | 2011-05-10 11:39:13 +0000 |
|---|---|---|
| committer | Igor Sysoev <igor@sysoev.ru> | 2011-05-10 11:39:13 +0000 |
| commit | e2c8ad71221ebcf5ca6331811118f9a6d18aec45 (patch) | |
| tree | 538d98e7b04df5ba091650e21cf3f04a9c4fa284 /auto | |
| parent | 9505277aa657590588504ae8f85e712f87d92ce6 (diff) | |
| download | nginx-e2c8ad71221ebcf5ca6331811118f9a6d18aec45.tar.gz nginx-e2c8ad71221ebcf5ca6331811118f9a6d18aec45.tar.bz2 | |
use POSIX semaphores in shmtx instead of sched_yield()
number of spinlock spins are increased twice
Diffstat (limited to 'auto')
| -rw-r--r-- | auto/os/freebsd | 9 | ||||
| -rwxr-xr-x | auto/unix | 12 |
2 files changed, 21 insertions, 0 deletions
diff --git a/auto/os/freebsd b/auto/os/freebsd index 20985294f..082938800 100644 --- a/auto/os/freebsd +++ b/auto/os/freebsd @@ -49,6 +49,15 @@ if [ $osreldate -gt 502103 ]; then have=NGX_HAVE_AIO_SENDFILE . auto/have fi +# POSIX semaphores +# http://www.freebsd.org/cgi/query-pr.cgi?pr=kern/127545 + +if [ $osreldate -ge 701106 ]; then + echo " + POSIX semaphores should work" +else + have=NGX_HAVE_POSIX_SEM . auto/nohave +fi + # kqueue @@ -234,6 +234,18 @@ ngx_feature_test="int id; . auto/feature +ngx_feature="POSIX semaphores" +ngx_feature_name="NGX_HAVE_POSIX_SEM" +ngx_feature_run=yes +ngx_feature_incs="#include <semaphore.h>" +ngx_feature_path= +ngx_feature_libs= +ngx_feature_test="sem_t sem; + if (sem_init(&sem, 1, 0) == -1) return 1; + sem_destroy(&sem);" +. auto/feature + + ngx_feature="struct msghdr.msg_control" ngx_feature_name="NGX_HAVE_MSGHDR_MSG_CONTROL" ngx_feature_run=no |
