guix/gnu/packages/patches/tbb-fix-test-on-aarch64.patch
Simon South 2d4c22b0aa
gnu: tbb: Fix test on AArch64.
* gnu/packages/patches/tbb-fix-test-on-aarch64.patch: New file.
* gnu/local.mk: Add it.
* gnu/packages/tbb.scm (tbb)[source]: Apply it.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2022-02-05 00:59:30 +01:00

35 lines
1.3 KiB
Diff

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