From: Michael Felt <aixtools@users.noreply.github.com>
Date: Sat, 3 Aug 2019 06:12:26 +0000 (+0200)
Subject: bpo-18049: Define THREAD_STACK_SIZE for AIX to pass default recursion limit test... 
X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=9670ce76b83bde950020f8d89c4d27168aaaf912;p=python

bpo-18049: Define THREAD_STACK_SIZE for AIX to pass default recursion limit test (GH-15081)

* Define THREAD_STACK_SIZE for AIX to pass default recursion limit test
---

diff --git a/Misc/NEWS.d/next/Library/2019-08-02-16-44-42.bpo-18049.OA4qBL.rst b/Misc/NEWS.d/next/Library/2019-08-02-16-44-42.bpo-18049.OA4qBL.rst
new file mode 100644
index 0000000000..36a4de384c
--- /dev/null
+++ b/Misc/NEWS.d/next/Library/2019-08-02-16-44-42.bpo-18049.OA4qBL.rst
@@ -0,0 +1,3 @@
+Add definition of THREAD_STACK_SIZE for AIX in Python/thread_pthread.h
+The default thread stacksize caused crashes with the default recursion limit
+Patch by M Felt
diff --git a/Python/thread_pthread.h b/Python/thread_pthread.h
index 994e35b2cc..5678b05ced 100644
--- a/Python/thread_pthread.h
+++ b/Python/thread_pthread.h
@@ -47,6 +47,10 @@
 #undef  THREAD_STACK_SIZE
 #define THREAD_STACK_SIZE       0x400000
 #endif
+#if defined(_AIX) && defined(THREAD_STACK_SIZE) && THREAD_STACK_SIZE == 0
+#undef  THREAD_STACK_SIZE
+#define THREAD_STACK_SIZE       0x200000
+#endif
 /* for safety, ensure a viable minimum stacksize */
 #define THREAD_STACK_MIN        0x8000  /* 32 KiB */
 #else  /* !_POSIX_THREAD_ATTR_STACKSIZE */