summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorMax Romanov <max.romanov@nginx.com>2021-03-02 18:30:34 +0300
committerMax Romanov <max.romanov@nginx.com>2021-03-02 18:30:34 +0300
commitfddde539c9cde818857f46c24eaa7d4e57eb9b44 (patch)
tree3a4c1b94e97a178f96c0e28a38f76106d2969879
parentd0591f07d7681a66197ee9ea4104177f13ccf8df (diff)
downloadunit-fddde539c9cde818857f46c24eaa7d4e57eb9b44.tar.gz
unit-fddde539c9cde818857f46c24eaa7d4e57eb9b44.tar.bz2
Fixing NetBSD compatibility.
Instead of PTHREAD_STACK_MIN define, NetBSD requires to get minimum stack size using sysctl(_SC_THREAD_STACK_MIN). This change originally proposed by Juraj Lutter <juraj@lutter.sk>.
-rw-r--r--src/nxt_conf_validation.c4
-rw-r--r--src/nxt_thread.h8
2 files changed, 10 insertions, 2 deletions
diff --git a/src/nxt_conf_validation.c b/src/nxt_conf_validation.c
index 67fa3095..0e6fc135 100644
--- a/src/nxt_conf_validation.c
+++ b/src/nxt_conf_validation.c
@@ -1459,10 +1459,10 @@ nxt_conf_vldt_thread_stack_size(nxt_conf_validation_t *vldt,
size = nxt_conf_get_number(value);
- if (size < PTHREAD_STACK_MIN) {
+ if (size < NXT_THREAD_STACK_MIN) {
return nxt_conf_vldt_error(vldt, "The \"thread_stack_size\" number "
"must be equal to or greater than %d.",
- PTHREAD_STACK_MIN);
+ NXT_THREAD_STACK_MIN);
}
if ((size % nxt_pagesize) != 0) {
diff --git a/src/nxt_thread.h b/src/nxt_thread.h
index 2ebc331d..d7800cc6 100644
--- a/src/nxt_thread.h
+++ b/src/nxt_thread.h
@@ -142,6 +142,14 @@ nxt_thread_yield() \
#endif
+#if (PTHREAD_STACK_MIN)
+#define NXT_THREAD_STACK_MIN PTHREAD_STACK_MIN
+
+#else
+#define NXT_THREAD_STACK_MIN sysconf(_SC_THREAD_STACK_MIN)
+#endif
+
+
struct nxt_thread_s {
nxt_log_t *log;
nxt_log_t main_log;