Uh oh!
There was an error while loading. Please reload this page.
gh-142095: Use thread local frame info in py-bt and py-bt-full when available - #143371
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.
bedevere-bot
commented
Jan 5, 2026
🤖 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. |
cielavenir
commented
Jan 6, 2026
ooo thank you so much 😭 |
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Co-authored-by: Victor Stinner <vstinner@python.org>
Co-authored-by: Victor Stinner <vstinner@python.org>
Co-authored-by: Victor Stinner <vstinner@python.org>
vstinner
commented
Jan 8, 2026
I suggest backporting this change to 3.13 and 3.14 branches. |
Uh oh!
There was an error while loading. Please reload this page.
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 <colesbury@gmail.com> Co-authored-by: Victor Stinner <vstinner@python.org>
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 <colesbury@gmail.com> Co-authored-by: Victor Stinner <vstinner@python.org>
GH-143567 is a backport of this pull request to the 3.13 branch. |
cielavenir
commented
Jan 8, 2026
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 <colesbury@gmail.com> Co-authored-by: Victor Stinner <vstinner@python.org>
…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 <vstinner@python.org>
…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. Co-authored-by: Victor Stinner <vstinner@python.org>
…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. Co-authored-by: Victor Stinner <vstinner@python.org>
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