Bug 1639242
| Summary: | py-bt is broken, results in exception | |||
|---|---|---|---|---|
| Product: | [Fedora] Fedora | Reporter: | Victor Stinner <vstinner> | |
| Component: | gdb | Assignee: | Sergio Durigan Junior <sergiodj> | |
| Status: | CLOSED ERRATA | QA Contact: | Fedora Extras Quality Assurance <extras-qa> | |
| Severity: | unspecified | Docs Contact: | ||
| Priority: | unspecified | |||
| Version: | 28 | CC: | afazekas, bkabrda, cstratak, dmalcolm, el, extras-qa, jan.kratochvil, keiths, kevinb, mcyprian, mhroncok, mplch, pmuldoon, pviktori, redhat, rkuska, sergiodj, shcherbina.iryna, tomspur, torsava, vstinner | |
| Target Milestone: | --- | |||
| Target Release: | --- | |||
| Hardware: | Unspecified | |||
| OS: | Unspecified | |||
| Whiteboard: | ||||
| Fixed In Version: | gdb-8.2-5.fc29 gdb-8.1.1-4.fc28 | Doc Type: | If docs needed, set a value | |
| Doc Text: | Story Points: | --- | ||
| Clone Of: | 1613614 | |||
| : | 1660220 (view as bug list) | Environment: | ||
| Last Closed: | 2018-12-02 08:27:45 UTC | Type: | Bug | |
| Regression: | --- | Mount Type: | --- | |
| Documentation: | --- | CRM: | ||
| Verified Versions: | Category: | --- | ||
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | ||
| Cloudforms Team: | --- | Target Upstream Version: | ||
| Embargoed: | ||||
| Bug Depends On: | 1613614 | |||
| Bug Blocks: | 1660220 | |||
|
Description
Victor Stinner
2018-10-15 11:28:15 UTC
Steps to reproduce the issue on Fedora 28: $ sudo dnf install gdb $ sudo dnf debuginfo-install python3 $ gdb python3 GNU gdb (GDB) Fedora 8.1.1-3.fc28 (...) Reading symbols from python3...Reading symbols from /usr/lib/debug/usr/bin/python3.6-3.6.6-1.fc28.x86_64.debug...done. done. Dwarf Error: could not find partial DIE containing offset 0x316 [in module /usr/lib/debug/usr/bin/python3.6-3.6.6-1.fc28.x86_64.debug] (gdb) The problem is the "Dwarf Error". On Rawhide, the steps in Comment 1 result in the same Dwarf Error. Sergio, could you help with this issue? I don't know where to investigate further. (In reply to Petr Viktorin from comment #2) > On Rawhide, the steps in Comment 1 result in the same Dwarf Error. > > Sergio, could you help with this issue? I don't know where to investigate > further. Sorry about the delay, this bug has fallen through the cracks. Anyway, with help from Keith and Jan we now have a patch for this issue. I expect to submit it this Thursday, let's see how upstream receives it. If everything goes well, I'll release a fixed GDB on Fedora by next week. Hope this helps, and thanks for the ping! A patch has been posted upstream: https://sourceware.org/ml/gdb-patches/2018-11/msg00574.html And approved: https://sourceware.org/ml/gdb-patches/2018-11/msg00576.html commit 81fbbaf96216ed88973a069e4ed25379d7421ec8 (HEAD -> master, origin/master, origin/HEAD) Author: Sergio Durigan Junior <sergiodj> Date: Wed Nov 28 17:22:08 2018 -0500 Fix dwarf2read.c:dwarf2_find_containing_comp_unit's binary search I'm working on backporting it to F28/F29 GDB now. gdb-8.2-5.fc29 has been submitted as an update to Fedora 29. https://bodhi.fedoraproject.org/updates/FEDORA-2018-1497d92365 gdb-8.1.1-4.fc28 has been submitted as an update to Fedora 28. https://bodhi.fedoraproject.org/updates/FEDORA-2018-c86898e4a7 gdb-8.1.1-4.fc28 has been pushed to the Fedora 28 testing repository. If problems still persist, please make note of it in this bug report. See https://fedoraproject.org/wiki/QA:Updates_Testing for instructions on how to install test updates. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2018-c86898e4a7 gdb-8.2-5.fc29 has been pushed to the Fedora 29 testing repository. If problems still persist, please make note of it in this bug report. See https://fedoraproject.org/wiki/QA:Updates_Testing for instructions on how to install test updates. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2018-1497d92365 gdb-8.2-5.fc29 has been pushed to the Fedora 29 stable repository. If problems still persist, please make note of it in this bug report. I tested again with gdb-8.2-3.fc29.x86_64 (with the bug):
$ cat x.py
import time
def func():
time.sleep(2500)
func()
$ gdb -args python3 x.py
(...)
Dwarf Error: could not find partial DIE containing offset 0x7d [in module /usr/lib/debug/usr/bin/python3.7-3.7.1-4.fc29.x86_64.debug]
I upgraded gdb to gdb-8.2-5.fc29.x86_64:
$ gdb -args python3 x.py
(...)
Reading symbols from python3...Reading symbols from /usr/lib/debug/usr/bin/python3.7-3.7.1-4.fc29.x86_64.debug...done.
(gdb) run
(...)
^C
(gdb) py-bt
Traceback (most recent call first):
<built-in method sleep of module object at remote 0x7fffea6fb688>
File "x.py", line 3, in func
time.sleep(2500)
File "x.py", line 4, in <module>
func()
Great! It works as expected on Fedora 29 on an up-to-date system ;-)
*** Bug 1613614 has been marked as a duplicate of this bug. *** gdb-8.1.1-4.fc28 has been pushed to the Fedora 28 stable repository. If problems still persist, please make note of it in this bug report. |