]> granicus.if.org Git - python/commitdiff
bpo-34602: Avoid failures setting macOS stack resource limit (GH-13011)
authorNed Deily <nad@python.org>
Mon, 29 Apr 2019 19:07:39 +0000 (15:07 -0400)
committerGitHub <noreply@github.com>
Mon, 29 Apr 2019 19:07:39 +0000 (15:07 -0400)
Under some conditions the earlier fix for bpo-18075, "Infinite recursion
tests triggering a segfault on Mac OS X", now causes failures on macOS
when attempting to change stack limit with resource.setrlimit
resource.RLIMIT_STACK, like regrtest does when running the test suite.
The reverted change had specified a non-default stack size when linking
the python executable on macOS.  As of macOS 10.14.4, the previous
code causes a hard failure when running tests, although similar
failures had been seen under some conditions under some earlier
systems.  For now, revert the original change and resume using
the default stack size when linking the interpreter.

Misc/NEWS.d/next/macOS/2019-04-29-10-54-14.bpo-34602.Lrl2zU.rst [new file with mode: 0644]
configure
configure.ac

diff --git a/Misc/NEWS.d/next/macOS/2019-04-29-10-54-14.bpo-34602.Lrl2zU.rst b/Misc/NEWS.d/next/macOS/2019-04-29-10-54-14.bpo-34602.Lrl2zU.rst
new file mode 100644 (file)
index 0000000..6f7ac88
--- /dev/null
@@ -0,0 +1,3 @@
+Avoid failures setting macOS stack resource limit with resource.setrlimit.
+This reverts an earlier fix for bpo-18075 which forced a non-default stack
+size when building the interpreter executable on macOS.
index 8d9c73d1c386bdd98236a39e211bceb160bb2aaa..e6e4007351591a4d9123ff71230c0a1a889f0bac 100755 (executable)
--- a/configure
+++ b/configure
@@ -9542,12 +9542,6 @@ then
        # -u libsys_s pulls in all symbols in libsys
        Darwin/*)
                LINKFORSHARED="$extra_undefs -framework CoreFoundation"
-
-               # Issue #18075: the default maximum stack size (8MBytes) is too
-               # small for the default recursion limit. Increase the stack size
-               # to ensure that tests don't crash
-               LINKFORSHARED="-Wl,-stack_size,1000000 $LINKFORSHARED"
-
                if test "$enable_framework"
                then
                        LINKFORSHARED="$LINKFORSHARED "'$(PYTHONFRAMEWORKDIR)/Versions/$(VERSION)/$(PYTHONFRAMEWORK)'
index 7d2eff0d94c34fc6c4840ceab1da5451e3667cd8..a02597da2db5ea4644916ae237bf8024184866d2 100644 (file)
@@ -2701,12 +2701,6 @@ then
        # -u libsys_s pulls in all symbols in libsys
        Darwin/*)
                LINKFORSHARED="$extra_undefs -framework CoreFoundation"
-
-               # Issue #18075: the default maximum stack size (8MBytes) is too
-               # small for the default recursion limit. Increase the stack size
-               # to ensure that tests don't crash
-               LINKFORSHARED="-Wl,-stack_size,1000000 $LINKFORSHARED"
-
                if test "$enable_framework"
                then
                        LINKFORSHARED="$LINKFORSHARED "'$(PYTHONFRAMEWORKDIR)/Versions/$(VERSION)/$(PYTHONFRAMEWORK)'