summaryrefslogtreecommitdiff
path: root/gnu/packages/patches/tbb-fix-test-on-aarch64.patch
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/patches/tbb-fix-test-on-aarch64.patch')
-rw-r--r--gnu/packages/patches/tbb-fix-test-on-aarch64.patch35
1 files changed, 35 insertions, 0 deletions
diff --git a/gnu/packages/patches/tbb-fix-test-on-aarch64.patch b/gnu/packages/patches/tbb-fix-test-on-aarch64.patch
new file mode 100644
index 0000000000..3a6003591e
--- /dev/null
+++ b/gnu/packages/patches/tbb-fix-test-on-aarch64.patch
@@ -0,0 +1,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
+