summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIgor Sysoev <igor@sysoev.ru>2009-03-13 14:53:30 +0000
committerIgor Sysoev <igor@sysoev.ru>2009-03-13 14:53:30 +0000
commitda0a5318f10bf171235c247976ae30ca9b07a19f (patch)
treeb2d68afc55abf5e59b07957f56e0b0685053b9e2
parent6d94b51f0bda79fba3a9d122537f0cfac412bb34 (diff)
downloadnginx-da0a5318f10bf171235c247976ae30ca9b07a19f.tar.gz
compatibility with Tru64 UNIX: fcntl(F_SETLK, F_WRLCK) returns EINVAL if busy
-rw-r--r--src/core/ngx_shmtx.h14
1 files changed, 11 insertions, 3 deletions
diff --git a/src/core/ngx_shmtx.h b/src/core/ngx_shmtx.h
index e6fb6aa31..57fe0b9f5 100644
--- a/src/core/ngx_shmtx.h
+++ b/src/core/ngx_shmtx.h
@@ -57,7 +57,15 @@ ngx_shmtx_trylock(ngx_shmtx_t *mtx)
return 0;
}
- ngx_log_abort(err, ngx_trylock_fd_n " failed");
+#if __osf__ /* Tru64 UNIX */
+
+ if (err == NGX_EACCESS) {
+ return 0;
+ }
+
+#endif
+
+ ngx_log_abort(err, ngx_trylock_fd_n " %s failed", mtx->name);
return 0;
}
@@ -74,7 +82,7 @@ ngx_shmtx_lock(ngx_shmtx_t *mtx)
return;
}
- ngx_log_abort(err, ngx_lock_fd_n " failed");
+ ngx_log_abort(err, ngx_lock_fd_n " %s failed", mtx->name);
}
@@ -89,7 +97,7 @@ ngx_shmtx_unlock(ngx_shmtx_t *mtx)
return;
}
- ngx_log_abort(err, ngx_unlock_fd_n " failed");
+ ngx_log_abort(err, ngx_unlock_fd_n " %s failed", mtx->name);
}