summaryrefslogtreecommitdiff
path: root/app-benchmarks/stress-ng
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2021-07-28 10:27:13 +0100
committerV3n3RiX <venerix@redcorelinux.org>2021-07-28 10:27:13 +0100
commitf4fc10428424904caf2035cffc442195cb088b2c (patch)
tree72f320d5963e55586cfdeed2b14c72b8191b6327 /app-benchmarks/stress-ng
parentfbd9734cedfe790955100b8e4ab3613457d77b1a (diff)
gentoo resync : 28.07.2021
Diffstat (limited to 'app-benchmarks/stress-ng')
-rw-r--r--app-benchmarks/stress-ng/Manifest3
-rw-r--r--app-benchmarks/stress-ng/files/stress-ng-0.12.12-glibc-2.34.patch101
-rw-r--r--app-benchmarks/stress-ng/stress-ng-0.12.12.ebuild2
3 files changed, 105 insertions, 1 deletions
diff --git a/app-benchmarks/stress-ng/Manifest b/app-benchmarks/stress-ng/Manifest
index 558604936596..ea76f83dee55 100644
--- a/app-benchmarks/stress-ng/Manifest
+++ b/app-benchmarks/stress-ng/Manifest
@@ -1,3 +1,4 @@
+AUX stress-ng-0.12.12-glibc-2.34.patch 3056 BLAKE2B 7aefa2aba05643feded8f02ab3aa2afadd6ce6125948e0ff2a6de4e1b9699d1d10c9c73be18eb9b23e6d5d55325f81794c78a92156ea06e5de28208e8af8ecb5 SHA512 5d492ca1adfdba68991b68a9f70d83f0c0fc4bbc3f7747bf25dcd63ca6b0c0d9d4466d46a35a98c3ba7348edea6a1bec59160e39037561960ffd331574295738
DIST stress-ng-0.12.12.tar.xz 558492 BLAKE2B ccd805a2f50306b50f95d98cdf766a82a511a03e2728cdcb70c51e6df75280c42195ed71b5a27bb4b70049ab1d18a6e47d7a1549a49601fc4f6fe3d0330db1b2 SHA512 1061618a44b2cb399cb845abf7de88009376dd186f259f7d91cdc6fb7102b2d869806d4c76c113c2355da426c066e41f7ee2e3d229fa499b16d993ec1cd5b278
-EBUILD stress-ng-0.12.12.ebuild 861 BLAKE2B 504588591c0f907fa543f17bfebd05d52f4fbd950eab60f99f8879bfb19c8b8ca89b407e945e983121cae974d31a70a603b7ef9ab53a224acedc5f880c145813 SHA512 a2f9c9c86c514a5e6f26dc21f6cccd56ace01222cdb45ed9f04e8b9aa3a9b88b6c2fbf6ffdbd6a80f407eebb724dd14777578ec571c57d8d59a775f6aa285b4f
+EBUILD stress-ng-0.12.12.ebuild 919 BLAKE2B 9196a9694f33f2a21c6569583524c76384eec66afbc0c8d050055f8b956668747ec2889cb7812a1a7b2c51c65af9b4f9e9bc6189413f4ba4dc13a8219b1fc41c SHA512 ed48c0150fbb0bfa7a3363421ed039cbd93845af7a54bd626610e63435747977c9bf9247987ad2d8b39404b95310e39559e88615791dfe11cf1d2eef8e58c207
MISC metadata.xml 834 BLAKE2B 01f0258893808f35495d063d634b3fecbb47e94cc6915ea605eedd6565e860bd42cbf181afa25e6e2faba396aa4c6da5d4e489af40bf5b11bd2ebb4e363e6994 SHA512 17c422c00bae52d5305ec4c34452c2bf86f280f2fcfa8c26710356023115828092d1d6f321e8ee194801b2d31413e07416041632ef692ad4128f8f99e389efb1
diff --git a/app-benchmarks/stress-ng/files/stress-ng-0.12.12-glibc-2.34.patch b/app-benchmarks/stress-ng/files/stress-ng-0.12.12-glibc-2.34.patch
new file mode 100644
index 000000000000..b2f93f21cba6
--- /dev/null
+++ b/app-benchmarks/stress-ng/files/stress-ng-0.12.12-glibc-2.34.patch
@@ -0,0 +1,101 @@
+From f839de283c44ffe46a2d14bfdf854c145abd8ed6 Mon Sep 17 00:00:00 2001
+From: Colin Ian King <colin.king@canonical.com>
+Date: Mon, 19 Jul 2021 20:49:34 +0100
+Subject: [PATCH] Detemine minimal stack size via sysconf, then
+ PTHREAD_STACK_MIN then guess
+
+Don't rely on PTHREAD_STACK_MIN being defined, use sysconf, then
+PTHREAD_STACK_MIN if it is defined, then 8K default.
+
+Signed-off-by: Colin Ian King <colin.king@canonical.com>
+---
+ core-helper.c | 31 +++++++++++++++++++++++++++++++
+ stress-ng.h | 1 +
+ stress-pthread.c | 13 ++-----------
+ 3 files changed, 34 insertions(+), 11 deletions(-)
+
+diff --git a/core-helper.c b/core-helper.c
+index 508627f2..97a3b869 100644
+--- a/core-helper.c
++++ b/core-helper.c
+@@ -2494,6 +2494,37 @@ size_t stress_min_sig_stack_size(void)
+ return (size_t)sz;
+ }
+
++size_t stress_min_pthread_stack_size(void)
++{
++ static long sz = -1, min;
++
++ /* return cached copy */
++ if (sz > 0)
++ return sz;
++
++ min = stress_min_aux_sig_stack_size();
++#if defined(__SC_THREAD_STACK_MIN_VALUE)
++ sz = sysconf(__SC_THREAD_STACK_MIN_VALUE);
++ if (sz > min)
++ min = sz;
++#endif
++#if defined(_SC_THREAD_STACK_MIN_VALUE)
++ sz = sysconf(_SC_THREAD_STACK_MIN_VALUE);
++ if (sz > min)
++ min = sz;
++#endif
++#if defined(PTHREAD_STACK_MIN)
++ if (PTHREAD_STACK_MIN > min)
++ min = PTHREAD_STACK_MIN;
++#endif
++ if (8192 > min)
++ min = 8192;
++
++ sz = min;
++
++ return (size_t)sz;
++}
++
+ /*
+ * stress_sig_handler_exit()
+ * signal handler that exits a process via _exit(0) for
+diff --git a/stress-ng.h b/stress-ng.h
+index 8a8b17ae..cd744756 100644
+--- a/stress-ng.h
++++ b/stress-ng.h
+@@ -4056,6 +4056,7 @@ extern WARN_UNUSED int32_t stress_get_opt_ionice_class(const char *const str);
+ /* Misc helper funcs */
+ extern WARN_UNUSED size_t stress_sig_stack_size(void);
+ extern WARN_UNUSED size_t stress_min_sig_stack_size(void);
++extern WARN_UNUSED size_t stress_min_pthread_stack_size(void);
+
+ #define STRESS_SIGSTKSZ (stress_sig_stack_size())
+ #define STRESS_MINSIGSTKSZ (stress_min_sig_stack_size())
+diff --git a/stress-pthread.c b/stress-pthread.c
+index 0da3aeec..27777af8 100644
+--- a/stress-pthread.c
++++ b/stress-pthread.c
+@@ -69,12 +69,7 @@ static const stress_opt_set_func_t opt_set_funcs[] = {
+
+ #if defined(HAVE_LIB_PTHREAD)
+
+-/* Some systems such as GNU/HURD don't define PTHREAD_STACK_MIN */
+-#if !defined(PTHREAD_STACK_MIN)
+-#define PTHREAD_STACK_MIN (16 * KB)
+-#endif
+-
+-#define DEFAULT_STACK_MIN (16 * KB)
++#define DEFAULT_STACK_MIN (8 * KB)
+
+ #if defined(HAVE_GET_ROBUST_LIST) && \
+ defined(HAVE_LINUX_FUTEX_H)
+@@ -404,11 +399,7 @@ static int stress_pthread(const stress_args_t *args)
+ stress_pthread_args_t pargs = { args, NULL, 0 };
+ sigset_t set;
+ #if defined(HAVE_PTHREAD_ATTR_SETSTACK)
+-#if DEFAULT_STACK_MIN == PTHREAD_STACK_MIN
+- const size_t stack_size = PTHREAD_STACK_MIN;
+-#else
+- const size_t stack_size = STRESS_MAXIMUM(DEFAULT_STACK_MIN, PTHREAD_STACK_MIN);
+-#endif
++ const size_t stack_size = STRESS_MAXIMUM(DEFAULT_STACK_MIN, stress_min_pthread_stack_size());
+ #endif
+
+ keep_running_flag = true;
diff --git a/app-benchmarks/stress-ng/stress-ng-0.12.12.ebuild b/app-benchmarks/stress-ng/stress-ng-0.12.12.ebuild
index 309cd350a1c7..4269478b747b 100644
--- a/app-benchmarks/stress-ng/stress-ng-0.12.12.ebuild
+++ b/app-benchmarks/stress-ng/stress-ng-0.12.12.ebuild
@@ -28,6 +28,8 @@ RDEPEND="${DEPEND}"
DOCS=( "README" "README.Android" "TODO" "syscalls.txt" )
+PATCHES=( "${FILESDIR}/${PN}-0.12.12-glibc-2.34.patch" )
+
src_compile() {
export MAN_COMPRESS=0
export VERBOSE=1