classification
Title: Update python-gdb.py for fastcalls
Type: Stage: resolved
Components: Versions: Python 3.7, Python 3.6
process
Status: closed Resolution: fixed
Dependencies: Superseder:
Assigned To: Nosy List: haypo, inada.naoki, ned.deily, python-dev
Priority: Keywords: patch

Created on 2016-11-22 11:42 by haypo, last changed 2016-12-17 05:09 by ned.deily. This issue is now closed.

Files
File name Uploaded Description Edit
gdb_fastcall.patch haypo, 2016-11-22 11:42 review
gdb_fastcall-2.patch haypo, 2016-11-22 11:44 review
Messages (10)
msg281465 - (view) Author: STINNER Victor (haypo) * (Python committer) Date: 2016-11-22 11:42
Python 3.6 has a new C calling convention: "fast calls".

python-gdb.py was disabled when compact dict was merged, see issue #27350.

Sadly, I missed that fast calls also broke python-gdb.py.

Attached patch fixes python-gdb.py, but I failed to fix test_gdb.py. With fast calls and patched python-gdb.py, python-gdb.py is now able to detect the Python frame of the call to the builtin id() function. It's a new feature compared to Python 3.5, but test_gdb.py should be updated to handle that.

I will try to fix that later, but in the meanwhile I was interrupted because the fix for compact dict in python-gdb.py failed on buildbots, see:
http://bugs.python.org/issue28023#msg281464
msg281522 - (view) Author: Roundup Robot (python-dev) Date: 2016-11-22 21:55
New changeset 752863f96fb8 by Victor Stinner in branch 'default':
Issue #28770: Update python-gdb.py for fastcalls
https://hg.python.org/cpython/rev/752863f96fb8
msg281523 - (view) Author: STINNER Victor (haypo) * (Python committer) Date: 2016-11-22 22:02
I keep the issue open until the 3.6 branch is reopened for regular bug fixes, like this one. Then I will backport the fix to 3.6.
msg282603 - (view) Author: INADA Naoki (inada.naoki) * (Python committer) Date: 2016-12-07 09:16
3.6 branch is reopened
msg282715 - (view) Author: Roundup Robot (python-dev) Date: 2016-12-08 16:17
New changeset f41d02d7da37 by Victor Stinner in branch '3.6':
Issue #28770: Update python-gdb.py for fastcalls
https://hg.python.org/cpython/rev/f41d02d7da37
msg282716 - (view) Author: STINNER Victor (haypo) * (Python committer) Date: 2016-12-08 16:19
I fixed the issue in Python 3.6 (future 3.6.1).
msg283402 - (view) Author: STINNER Victor (haypo) * (Python committer) Date: 2016-12-16 14:58
The change was cherry-picked in Python 3.6.0RC2.

The issue is now fixed, so I close the issue.
msg283407 - (view) Author: Ned Deily (ned.deily) * (Python committer) Date: 2016-12-16 15:11
Please leave this open until the cherry picking is completed.
msg283464 - (view) Author: Roundup Robot (python-dev) Date: 2016-12-17 04:02
New changeset b0efa88c4cf4 by Victor Stinner in branch '3.6':
Issue #28770: Update python-gdb.py for fastcalls
https://hg.python.org/cpython/rev/b0efa88c4cf4
msg283467 - (view) Author: Ned Deily (ned.deily) * (Python committer) Date: 2016-12-17 05:09
[cherrypicked for 3.6.0rc2]
History
Date User Action Args
2016-12-17 05:09:56ned.deilysetpriority: release blocker ->
status: open -> closed
messages: + msg283467

stage: resolved
2016-12-17 04:02:00python-devsetmessages: + msg283464
2016-12-16 15:11:38ned.deilysetstatus: closed -> open

messages: + msg283407
2016-12-16 14:58:48hayposetstatus: open -> closed

messages: + msg283402
2016-12-16 08:28:44ned.deilysetstatus: closed -> open
2016-12-16 08:27:49ned.deilysetpriority: normal -> release blocker
nosy: + ned.deily
2016-12-08 16:19:50hayposetstatus: open -> closed
resolution: fixed
messages: + msg282716
2016-12-08 16:17:28python-devsetmessages: + msg282715
2016-12-07 09:16:54inada.naokisetmessages: + msg282603
2016-11-22 22:02:21hayposetmessages: + msg281523
2016-11-22 21:55:36python-devsetnosy: + python-dev
messages: + msg281522
2016-11-22 11:44:51hayposetfiles: + gdb_fastcall-2.patch
2016-11-22 11:43:14hayposetnosy: + inada.naoki
2016-11-22 11:42:55haypocreate