-
-
Notifications
You must be signed in to change notification settings - Fork 33.9k
gh-142095: Use thread local frame info in py-bt and py-bt-full when available
#143371
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
Conversation
py-bt and py-bt-full when availablepy-bt and py-bt-full when available
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
|
🤖 New build scheduled with the buildbot fleet by @colesbury for commit a44b2a7 🤖 Results will be shown at: https://buildbot.python.org/all/#/grid?branch=refs%2Fpull%2F143371%2Fmerge If you want to schedule another build, you need to add the 🔨 test-with-buildbots label again. |
|
ooo thank you so much 😭 |
Co-authored-by: Victor Stinner <[email protected]>
Co-authored-by: Victor Stinner <[email protected]>
Co-authored-by: Victor Stinner <[email protected]>
vstinner
left a comment
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.
LGTM. Thanks for the update.
|
I suggest backporting this change to 3.13 and 3.14 branches. |
|
Thanks @colesbury for the PR 🌮🎉.. I'm working now to backport this PR to: 3.13, 3.14. |
…ll` when available (pythongh-143371) In optimized and `-Og` builds, arguments and local variables are frequently unavailable in gdb. This makes `py-bt` fail to print anything useful. Use the `PyThreadState*` pointers `_Py_tss_gilstate` and `Py_tss_tstate` to find the interpreter frame if we can't get the frame from the `_PyEval_EvalFrameDefault` call. (cherry picked from commit 49c3b0a) Co-authored-by: Sam Gross <[email protected]> Co-authored-by: Victor Stinner <[email protected]>
|
Sorry, @colesbury, I could not cleanly backport this to |
|
GH-143566 is a backport of this pull request to the 3.14 branch. |
…y-bt-full` when available (pythongh-143371) In optimized and `-Og` builds, arguments and local variables are frequently unavailable in gdb. This makes `py-bt` fail to print anything useful. Use the `PyThreadState*` pointers `_Py_tss_gilstate` and `Py_tss_tstate` to find the interpreter frame if we can't get the frame from the `_PyEval_EvalFrameDefault` call. (cherry picked from commit 49c3b0a) Co-authored-by: Sam Gross <[email protected]> Co-authored-by: Victor Stinner <[email protected]>
|
GH-143567 is a backport of this pull request to the 3.13 branch. |
|
I think 3.13's libpython.py can be simply overwritten. |
…ull` when available (gh-143371) (#143566) In optimized and `-Og` builds, arguments and local variables are frequently unavailable in gdb. This makes `py-bt` fail to print anything useful. Use the `PyThreadState*` pointers `_Py_tss_gilstate` and `Py_tss_tstate` to find the interpreter frame if we can't get the frame from the `_PyEval_EvalFrameDefault` call. (cherry picked from commit 49c3b0a) Co-authored-by: Sam Gross <[email protected]> Co-authored-by: Victor Stinner <[email protected]>
…ull` when available (gh-143371) (#143567) In optimized and `-Og` builds, arguments and local variables are frequently unavailable in gdb. This makes `py-bt` fail to print anything useful. Use the `PyThreadState*` pointers `_Py_tss_gilstate` and `Py_tss_tstate` to find the interpreter frame if we can't get the frame from the `_PyEval_EvalFrameDefault` call. (cherry picked from commit 49c3b0a) Co-authored-by: Victor Stinner <[email protected]>
In optimized and
-Ogbuilds, arguments and local variables are frequently unavailable in gdb. This makespy-btfail to print anything useful. Use thePyThreadState*pointers_Py_tss_gilstateandPy_tss_tstateto find the interpreter frame if we can't get the frame from the_PyEval_EvalFrameDefaultcall.py-btis no more compatible with Python 3.13+ #142095