This is the mail archive of the
gdb-testers@sourceware.org
mailing list for the GDB project.
[binutils-gdb/gdb-7.11-branch] Fix PR remote/19840: gdb crashes on reverse-stepi
- From: sergiodj+buildbot at sergiodj dot net
- To: gdb-testers at sourceware dot org
- Date: Wed, 13 Apr 2016 09:51:16 -0400
- Subject: [binutils-gdb/gdb-7.11-branch] Fix PR remote/19840: gdb crashes on reverse-stepi
- Authentication-results: sourceware.org; auth=none
*** TEST RESULTS FOR COMMIT 6b9ef0d488c556339aea7b095ef7a9b6bf6b1af1 ***
Author: Pedro Alves <palves@redhat.com>
Branch: gdb-7.11-branch
Commit: 6b9ef0d488c556339aea7b095ef7a9b6bf6b1af1
Fix PR remote/19840: gdb crashes on reverse-stepi
Reverse debugging against a remote target that does reverse debugging
itself (with the bs/bc packets) always trips on:
(gdb) target remote localhost:...
(gdb) reverse-stepi
../../gdb/target.c:602: internal-error: default_execution_direction: to_execution_direction must be implemented for reverse async
I missed adding a to_execution_direction method to remote.c in commit
3223143295b5 (Adds target_execution_direction to make record targets
support async mode), GDB 7.4 time. Later, GDB 7.8 switched to
target-async on by default, making the regression user-visible by
default too.
Fix is simply to add the missing to_execution_direction implementation
to target remote.
Tested by Andi Kleen against Simics.
gdb/ChangeLog:
2016-04-13 Pedro Alves <palves@redhat.com>
PR remote/19840
* remote.c (struct remote_state) <last_resume_exec_dir>: New
field.
(new_remote_state): Default last_resume_exec_dir to EXEC_FORWARD.
(remote_open_1): Reset last_resume_exec_dir to EXEC_FORWARD.
(remote_resume): Store the last execution direction.
(remote_execution_direction): New function.
(init_remote_ops): Install it as to_execution_direction target_ops
method.
- Follow-Ups:
- Failures on RHEL-s390x-m64, branch gdb-7.11-branch
- Failures on Fedora-i686, branch gdb-7.11-branch
- Failures on Fedora-x86_64-m32, branch gdb-7.11-branch
- Failures on Fedora-x86_64-native-extended-gdbserver-m32, branch gdb-7.11-branch
- Failures on Fedora-x86_64-native-extended-gdbserver-m64, branch gdb-7.11-branch
- Failures on Fedora-x86_64-native-gdbserver-m64, branch gdb-7.11-branch
- Failures on AIX-POWER7-plain, branch gdb-7.11-branch
- Failures on Fedora-x86_64-native-gdbserver-m32, branch gdb-7.11-branch
- Failures on Fedora-s390x-m64, branch gdb-7.11-branch
- Failures on Debian-s390x-native-gdbserver-m64, branch gdb-7.11-branch
- Failures on Debian-i686, branch gdb-7.11-branch
- Failures on Debian-i686-native-extended-gdbserver, branch gdb-7.11-branch
- Failures on Fedora-ppc64be-cc-with-index, branch gdb-7.11-branch
- Failures on Fedora-ppc64be-native-gdbserver-m64, branch gdb-7.11-branch
- Failures on Fedora-ppc64be-native-extended-gdbserver-m64, branch gdb-7.11-branch
- Failures on Fedora-ppc64le-native-extended-gdbserver-m64, branch gdb-7.11-branch
- Failures on Fedora-ppc64le-native-gdbserver-m64, branch gdb-7.11-branch