summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexander Kanavin <alex.kanavin@gmail.com>2021-08-22 14:50:42 +0200
committerRichard Purdie <richard.purdie@linuxfoundation.org>2021-08-23 08:25:53 +0100
commitbd3923ed34a40ba5e58631f15b7534b59f9dbbbd (patch)
tree8c00884f59349204ff7340516ff275df608ea84c
parenta4f35b41dab09a5342926a4cb59314db16c977c4 (diff)
downloadpoky-bd3923ed34a40ba5e58631f15b7534b59f9dbbbd.tar.gz
stress-ng: upgrade 0.12.12 -> 0.13.00
(From OE-Core rev: 41bdb75052a04a33809e24ad94f2e940e80e5a1b) Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/recipes-extended/stress-ng/stress-ng/0001-Detemine-minimal-stack-size-via-sysconf-then-PTHREAD.patch103
-rw-r--r--meta/recipes-extended/stress-ng/stress-ng_0.13.00.bb (renamed from meta/recipes-extended/stress-ng/stress-ng_0.12.12.bb)3
2 files changed, 1 insertions, 105 deletions
diff --git a/meta/recipes-extended/stress-ng/stress-ng/0001-Detemine-minimal-stack-size-via-sysconf-then-PTHREAD.patch b/meta/recipes-extended/stress-ng/stress-ng/0001-Detemine-minimal-stack-size-via-sysconf-then-PTHREAD.patch
deleted file mode 100644
index d275e3d7f9..0000000000
--- a/meta/recipes-extended/stress-ng/stress-ng/0001-Detemine-minimal-stack-size-via-sysconf-then-PTHREAD.patch
+++ /dev/null
@@ -1,103 +0,0 @@
1From f839de283c44ffe46a2d14bfdf854c145abd8ed6 Mon Sep 17 00:00:00 2001
2From: Colin Ian King <colin.king@canonical.com>
3Date: Mon, 19 Jul 2021 20:49:34 +0100
4Subject: [PATCH] Detemine minimal stack size via sysconf, then PTHREAD_STACK_MIN then guess
5
6Don't rely on PTHREAD_STACK_MIN being defined, use sysconf, then
7PTHREAD_STACK_MIN if it is defined, then 8K default.
8
9Upstream-Status: Backport [https://kernel.ubuntu.com/git/cking/stress-ng.git/commit/?id=f839de283c44ffe46a2d14bfdf854c145abd8ed6]
10Signed-off-by: Colin Ian King <colin.king@canonical.com>
11---
12 core-helper.c | 31 +++++++++++++++++++++++++++++++
13 stress-ng.h | 1 +
14 stress-pthread.c | 13 ++-----------
15 3 files changed, 34 insertions(+), 11 deletions(-)
16
17diff --git a/core-helper.c b/core-helper.c
18index 508627f2..97a3b869 100644
19--- a/core-helper.c
20+++ b/core-helper.c
21@@ -2494,6 +2494,37 @@ size_t stress_min_sig_stack_size(void)
22 return (size_t)sz;
23 }
24
25+size_t stress_min_pthread_stack_size(void)
26+{
27+ static long sz = -1, min;
28+
29+ /* return cached copy */
30+ if (sz > 0)
31+ return sz;
32+
33+ min = stress_min_aux_sig_stack_size();
34+#if defined(__SC_THREAD_STACK_MIN_VALUE)
35+ sz = sysconf(__SC_THREAD_STACK_MIN_VALUE);
36+ if (sz > min)
37+ min = sz;
38+#endif
39+#if defined(_SC_THREAD_STACK_MIN_VALUE)
40+ sz = sysconf(_SC_THREAD_STACK_MIN_VALUE);
41+ if (sz > min)
42+ min = sz;
43+#endif
44+#if defined(PTHREAD_STACK_MIN)
45+ if (PTHREAD_STACK_MIN > min)
46+ min = PTHREAD_STACK_MIN;
47+#endif
48+ if (8192 > min)
49+ min = 8192;
50+
51+ sz = min;
52+
53+ return (size_t)sz;
54+}
55+
56 /*
57 * stress_sig_handler_exit()
58 * signal handler that exits a process via _exit(0) for
59diff --git a/stress-ng.h b/stress-ng.h
60index 8a8b17ae..cd744756 100644
61--- a/stress-ng.h
62+++ b/stress-ng.h
63@@ -4056,6 +4056,7 @@ extern WARN_UNUSED int32_t stress_get_opt_ionice_class(const char *const str);
64 /* Misc helper funcs */
65 extern WARN_UNUSED size_t stress_sig_stack_size(void);
66 extern WARN_UNUSED size_t stress_min_sig_stack_size(void);
67+extern WARN_UNUSED size_t stress_min_pthread_stack_size(void);
68
69 #define STRESS_SIGSTKSZ (stress_sig_stack_size())
70 #define STRESS_MINSIGSTKSZ (stress_min_sig_stack_size())
71diff --git a/stress-pthread.c b/stress-pthread.c
72index 0da3aeec..27777af8 100644
73--- a/stress-pthread.c
74+++ b/stress-pthread.c
75@@ -69,12 +69,7 @@ static const stress_opt_set_func_t opt_set_funcs[] = {
76
77 #if defined(HAVE_LIB_PTHREAD)
78
79-/* Some systems such as GNU/HURD don't define PTHREAD_STACK_MIN */
80-#if !defined(PTHREAD_STACK_MIN)
81-#define PTHREAD_STACK_MIN (16 * KB)
82-#endif
83-
84-#define DEFAULT_STACK_MIN (16 * KB)
85+#define DEFAULT_STACK_MIN (8 * KB)
86
87 #if defined(HAVE_GET_ROBUST_LIST) && \
88 defined(HAVE_LINUX_FUTEX_H)
89@@ -404,11 +399,7 @@ static int stress_pthread(const stress_args_t *args)
90 stress_pthread_args_t pargs = { args, NULL, 0 };
91 sigset_t set;
92 #if defined(HAVE_PTHREAD_ATTR_SETSTACK)
93-#if DEFAULT_STACK_MIN == PTHREAD_STACK_MIN
94- const size_t stack_size = PTHREAD_STACK_MIN;
95-#else
96- const size_t stack_size = STRESS_MAXIMUM(DEFAULT_STACK_MIN, PTHREAD_STACK_MIN);
97-#endif
98+ const size_t stack_size = STRESS_MAXIMUM(DEFAULT_STACK_MIN, stress_min_pthread_stack_size());
99 #endif
100
101 keep_running_flag = true;
102--
1032.32.0
diff --git a/meta/recipes-extended/stress-ng/stress-ng_0.12.12.bb b/meta/recipes-extended/stress-ng/stress-ng_0.13.00.bb
index afc9ddf96c..198f7e87c7 100644
--- a/meta/recipes-extended/stress-ng/stress-ng_0.12.12.bb
+++ b/meta/recipes-extended/stress-ng/stress-ng_0.13.00.bb
@@ -7,9 +7,8 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
7 7
8SRC_URI = "https://kernel.ubuntu.com/~cking/tarballs/${BPN}/${BP}.tar.xz \ 8SRC_URI = "https://kernel.ubuntu.com/~cking/tarballs/${BPN}/${BP}.tar.xz \
9 file://0001-Do-not-preserve-ownership-when-installing-example-jo.patch \ 9 file://0001-Do-not-preserve-ownership-when-installing-example-jo.patch \
10 file://0001-Detemine-minimal-stack-size-via-sysconf-then-PTHREAD.patch \
11 " 10 "
12SRC_URI[sha256sum] = "f27af50f6f2308e707fef927674bdd209a046b116734281b792aeca35a4e4499" 11SRC_URI[sha256sum] = "1cefe4a3057c1522b146e62f61b80ce6e2e99da2d85ebe25bc03fc45228e58cd"
13 12
14DEPENDS = "coreutils-native" 13DEPENDS = "coreutils-native"
15 14