blob: 3a6003591ebb3a6594fae410ed5b87423bd1e873 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
From 013035b4e9af39f506e87ae6b755c3363e768d4d Mon Sep 17 00:00:00 2001
From: Vladislav Shchapov <phprus@gmail.com>
Date: Thu, 23 Dec 2021 19:17:24 +0500
Subject: [PATCH] Fix issue #687 (test_eh_thread) (#697)
Signed-off-by: Vladislav Shchapov <phprus@gmail.com>
---
test/tbb/test_eh_thread.cpp | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/test/tbb/test_eh_thread.cpp b/test/tbb/test_eh_thread.cpp
index aa6d764d..af291f48 100644
--- a/test/tbb/test_eh_thread.cpp
+++ b/test/tbb/test_eh_thread.cpp
@@ -36,6 +36,7 @@
// TODO: enable limitThreads with sanitizer under docker
#if TBB_USE_EXCEPTIONS && !_WIN32 && !__ANDROID__
+#include <limits.h>
#include <sys/types.h>
#include <sys/time.h>
#include <sys/resource.h>
@@ -73,7 +74,8 @@ public:
mValid = false;
pthread_attr_t attr;
// Limit the stack size not to consume all virtual memory on 32 bit platforms.
- if (pthread_attr_init(&attr) == 0 && pthread_attr_setstacksize(&attr, 100*1024) == 0) {
+ std::size_t stacksize = utils::max(128*1024, PTHREAD_STACK_MIN);
+ if (pthread_attr_init(&attr) == 0 && pthread_attr_setstacksize(&attr, stacksize) == 0) {
mValid = pthread_create(&mHandle, &attr, thread_routine, /* arg = */ nullptr) == 0;
}
}
--
2.34.0
|