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 gdb/19676: Disable displaced stepping if /proc not mounted
- From: sergiodj+buildbot at sergiodj dot net
- To: gdb-testers at sourceware dot org
- Date: Tue, 15 Mar 2016 13:24:35 -0400
- Subject: [binutils-gdb/gdb-7.11-branch] Fix PR gdb/19676: Disable displaced stepping if /proc not mounted
- Authentication-results: sourceware.org; auth=none
*** TEST RESULTS FOR COMMIT 4e57eb7028442f0e771c815d755b64daf7394e68 ***
Author: Pedro Alves <palves@redhat.com>
Branch: gdb-7.11-branch
Commit: 4e57eb7028442f0e771c815d755b64daf7394e68
Fix PR gdb/19676: Disable displaced stepping if /proc not mounted
On GNU/Linux archs that support displaced stepping, if /proc is not
mounted, GDB gets stuck not able to step past breakpoints:
(gdb) c
Continuing.
dl_main (phdr=<optimized out>, phnum=<optimized out>, user_entry=<optimized out>, auxv=<optimized out>) at rtld.c:2163
2163 LIBC_PROBE (init_complete, 2, LM_ID_BASE, r);
Cannot find AT_ENTRY auxiliary vector entry.
(gdb) c
Continuing.
dl_main (phdr=<optimized out>, phnum=<optimized out>, user_entry=<optimized out>, auxv=<optimized out>) at rtld.c:2163
2163 LIBC_PROBE (init_complete, 2, LM_ID_BASE, r);
Cannot find AT_ENTRY auxiliary vector entry.
(gdb)
That's because GDB can't figure out where the scratch pad is.
This is a regression introduced by the earlier changes to make the
Linux native target always work in non-stop mode.
This commit makes GDB detect the case and fallback to stepping over
breakpoints in-line.
gdb/ChangeLog:
2016-03-15 Pedro Alves <palves@redhat.com>
PR gdb/19676
* infrun.c (displaced_step_prepare): Also disable displaced
stepping on NOT_SUPPORTED_ERROR.
* linux-tdep.c (linux_displaced_step_location): If reading auxv
fails, throw NOT_SUPPORTED_ERROR instead of generic error.
- Follow-Ups:
- Failures on RHEL-s390x-m64, branch gdb-7.11-branch
- Failures on AIX-POWER7-plain, 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 Fedora-x86_64-native-gdbserver-m64, branch gdb-7.11-branch
- Failures on Fedora-x86_64-m64, branch gdb-7.11-branch
- Failures on Debian-i686, branch gdb-7.11-branch
- Failures on Debian-s390x-native-extended-gdbserver-m64, branch gdb-7.11-branch
- Failures on Debian-i686-native-gdbserver, branch gdb-7.11-branch
- Failures on Debian-i686-native-extended-gdbserver, 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-cc-with-index, branch gdb-7.11-branch
- Failures on Debian-x86_64-native-gdbserver-m64, branch gdb-7.11-branch