-
-
Notifications
You must be signed in to change notification settings - Fork 31.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
GH-130396: Use computed stack limits on linux #130398
GH-130396: Use computed stack limits on linux #130398
Conversation
ec4cc83
to
6b48afe
Compare
!buildbot .* |
🤖 New build scheduled with the buildbot fleet by @markshannon for commit 12f9ce7 🤖 Results will be shown at: https://buildbot.python.org/all/#/grid?branch=refs%2Fpull%2F130398%2Fmerge The command will test the builders whose names match following regular expression: The builders matched are:
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm definitely not an expert in this particular area, but the changes seem reasonable (provided the buildbots are happy).
Include/pythonrun.h
Outdated
* no two calls to check recursion depth are more than this far | ||
* apart. In practice, that means it must be larger than the C | ||
* stack consumption of PyEval_EvalDefault */ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This seems sort of fragile? What if there's a ton of unrelated C calls (maybe from a C extension) between two interpreter entries? Does that cause this to be incorrect?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Any C code that can recurse needs to do checks.
We already do that in plenty of places, like the parser, compiler, json encoding, etc.
C extensions should do it too.
Ignoring prior failures and timesouts, the buildbot fialures are webassembly stack overflows and a couple of odd AIX failures. |
Misc/NEWS.d/next/Core_and_Builtins/2025-02-21-11-12-41.gh-issue-130396.SIenSP.rst
Outdated
Show resolved
Hide resolved
Misc/NEWS.d/next/Core_and_Builtins/2025-02-21-11-12-41.gh-issue-130396.SIenSP.rst
Outdated
Show resolved
Hide resolved
!buildbot was[i|m] |
🤖 New build scheduled with the buildbot fleet by @markshannon for commit f6002e5 🤖 Results will be shown at: https://buildbot.python.org/all/#/grid?branch=refs%2Fpull%2F130398%2Fmerge The command will test the builders whose names match following regular expression: The builders matched are:
|
!buildbot AIX |
🤖 New build scheduled with the buildbot fleet by @markshannon for commit f6002e5 🤖 Results will be shown at: https://buildbot.python.org/all/#/grid?branch=refs%2Fpull%2F130398%2Fmerge The command will test the builders whose names match following regular expression: The builders matched are:
|
One failure is a compilation failure. The other is stack related. |
!buildbot AIX |
🤖 New build scheduled with the buildbot fleet by @markshannon for commit 1d76b48 🤖 Results will be shown at: https://buildbot.python.org/all/#/grid?branch=refs%2Fpull%2F130398%2Fmerge The command will test the builders whose names match following regular expression: The builders matched are:
|
!buildbot AIX |
🤖 New build scheduled with the buildbot fleet by @markshannon for commit 415906c 🤖 Results will be shown at: https://buildbot.python.org/all/#/grid?branch=refs%2Fpull%2F130398%2Fmerge The command will test the builders whose names match following regular expression: The builders matched are:
|
!buildbot iOS |
🤖 New build scheduled with the buildbot fleet by @markshannon for commit 415906c 🤖 Results will be shown at: https://buildbot.python.org/all/#/grid?branch=refs%2Fpull%2F130398%2Fmerge The command will test the builders whose names match following regular expression: The builders matched are:
|
Compilation failures on both AIX buildbots, but unrelated to this PR. |
!buildbot wasm |
🤖 New build scheduled with the buildbot fleet by @markshannon for commit 415906c 🤖 Results will be shown at: https://buildbot.python.org/all/#/grid?branch=refs%2Fpull%2F130398%2Fmerge The command will test the builders whose names match following regular expression: The builders matched are:
|
!buildbot iOS |
🤖 New build scheduled with the buildbot fleet by @markshannon for commit b3ccffc 🤖 Results will be shown at: https://buildbot.python.org/all/#/grid?branch=refs%2Fpull%2F130398%2Fmerge The command will test the builders whose names match following regular expression: The builders matched are:
|
!buildbot iOS |
🤖 New build scheduled with the buildbot fleet by @markshannon for commit a2c1656 🤖 Results will be shown at: https://buildbot.python.org/all/#/grid?branch=refs%2Fpull%2F130398%2Fmerge The command will test the builders whose names match following regular expression: The builders matched are:
|
!buildbot wasm |
🤖 New build scheduled with the buildbot fleet by @markshannon for commit a2c1656 🤖 Results will be shown at: https://buildbot.python.org/all/#/grid?branch=refs%2Fpull%2F130398%2Fmerge The command will test the builders whose names match following regular expression: The builders matched are:
|
!buildbot wasm |
🤖 New build scheduled with the buildbot fleet by @markshannon for commit a2c1656 🤖 Results will be shown at: https://buildbot.python.org/all/#/grid?branch=refs%2Fpull%2F130398%2Fmerge The command will test the builders whose names match following regular expression: The builders matched are:
|
|
|
Technically, not just linux, but any platform with
pthread_getattr_np
.