This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
[PATCH 0/2] [ARM] Software single step cross linux kernel helpers
- From: Yao Qi <qiyaoltc at gmail dot com>
- To: gdb-patches at sourceware dot org
- Date: Thu, 11 Feb 2016 15:18:46 +0000
- Subject: [PATCH 0/2] [ARM] Software single step cross linux kernel helpers
- Authentication-results: sourceware.org; auth=none
Hi,
When I play with software single step in GDBserver on arm-linux, I find
a problem that GDBserver can't single step over linux kernel helpers,
but GDB has already fixed it. Patch #1 is to move the logic handling
step kernel helper to arch/arm-get-next-pcs.c, so that both GDB and
GDBserver can handle stepping over kernel helpers properly.
After I finished patch #1, I add a test case about it, but the test case
exposes the bug in the existing code stepping over kernel helper. Looks
current code only handles the case that kernel helpers are tail-called.
Patch #2 adds the test case and the fix. See more details there.
No regression on aarch64-linux (with multi-arch debugging). Regression
testing on arm-linux is still running.
*** BLURB HERE ***
Yao Qi (2):
[ARM] Fixup PC in software single step
[ARM] Software single step cross kernel helpers
gdb/arch/arm-get-next-pcs.c | 11 +++
gdb/arch/arm-get-next-pcs.h | 4 +
gdb/arch/arm-linux.c | 82 ++++++++++++++++++
gdb/arch/arm-linux.h | 4 +
gdb/arm-linux-tdep.c | 16 +---
gdb/arm-tdep.c | 3 +-
gdb/gdbserver/linux-arm-low.c | 3 +-
.../gdb.arch/arm-single-step-kernel-helper.c | 36 ++++++++
.../gdb.arch/arm-single-step-kernel-helper.exp | 97 ++++++++++++++++++++++
9 files changed, 241 insertions(+), 15 deletions(-)
create mode 100644 gdb/testsuite/gdb.arch/arm-single-step-kernel-helper.c
create mode 100644 gdb/testsuite/gdb.arch/arm-single-step-kernel-helper.exp
--
1.9.1