public inbox for gdb-patches@sourceware.org
 help / color / mirror / Atom feed
From: Yao Qi <qiyaoltc@gmail.com>
To: gdb-patches@sourceware.org
Subject: [PATCH 0/7] Aarch64 linux GDB remote multi-arch debugging
Date: Fri, 31 Jul 2015 15:17:00 -0000	[thread overview]
Message-ID: <1438355801-25798-1-git-send-email-yao.qi@linaro.org> (raw)

This patch series is to enable Aarch64 GDBserver debug arm program.

Patch 1 is to make variable have_ptrace_getregset shared for all linux
targets, so that patch 2 can use it.  Patch 2 adds a new regs_info
specific to aarch32, which will be used by patch 3.  This new regs_info
can also be used by some arm-linux targets if kernel support
ptrace_getregset.

Patch 3 is the major part of this series, which teach GDBserver uses
arm target description and regs_info if the target program is 32-bit.
Patch 4 is to handle the different size of PC value in multi-arch, which
is the same as what we are doing on x86 multi-arch.

Patch 5 disables Z0 packets on aarch64 for multi-arch debugging,
otherwise GDBserver has to know how to choose the right breakpoint
instructions for aarch64, arm, and arm thumb mode (thumb and thumb2).
See more details from the patch.

Nowadays, tracepoint is not supported for arm, so we need to disable
tracepoint support in aarch64 GDBserver if the target thread is 32-bit.
This is what patch 6 does.

Note that multi-thread debugging and HW watchpoint are still not
supported, because of some kernel issues.  My description in this
patch https://sourceware.org/ml/gdb-patches/2015-07/msg00029.html
is still valid.

After some kernel patches for multi-arch are committed, I'll enable
multi-thread debugging and HW watchpoint support in both GDB and
GDBserver.  That is my plan next step.

*** BLURB HERE ***

Yao Qi (7):
  Move have_ptrace_getregset to linux-low.c
  New regs_info for aarch32
  Use arm target description and regs_info for 32-bit file on aarch64
    GDBserver
  Get and set PC correctly on aarch64 in multi-arch
  Disable Z0 packet on aarch64 on multi-arch debugging
  Disable tracepoint support for aarch32
  Mention multi-arch debugging support in NEWS

 gdb/NEWS                          |   4 +
 gdb/gdbserver/configure.srv       |   5 ++
 gdb/gdbserver/linux-aarch32-low.c | 152 ++++++++++++++++++++++++++++++++++++++
 gdb/gdbserver/linux-aarch32-low.h |  36 +++++++++
 gdb/gdbserver/linux-aarch64-low.c | 100 ++++++++++++++++++++++---
 gdb/gdbserver/linux-arm-low.c     | 108 +++++++--------------------
 gdb/gdbserver/linux-low.c         |   3 +
 gdb/gdbserver/linux-low.h         |   2 +
 gdb/gdbserver/linux-x86-low.c     |   3 -
 gdb/gdbserver/server.c            |   2 +-
 gdb/gdbserver/server.h            |   1 +
 11 files changed, 318 insertions(+), 98 deletions(-)
 create mode 100644 gdb/gdbserver/linux-aarch32-low.c
 create mode 100644 gdb/gdbserver/linux-aarch32-low.h

-- 
1.9.1

             reply	other threads:[~2015-07-31 15:17 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-07-31 15:17 Yao Qi [this message]
2015-07-31 15:16 ` [PATCH 1/7] Move have_ptrace_getregset to linux-low.c Yao Qi
2015-07-31 15:17 ` [PATCH 6/7] Disable tracepoint support for aarch32 Yao Qi
2015-07-31 15:17 ` [PATCH 7/7] Mention multi-arch debugging support in NEWS Yao Qi
2015-08-19  8:26   ` Yao Qi
2015-09-04 14:30   ` Yao Qi
2015-07-31 15:17 ` [PATCH 3/7] Use arm target description and regs_info for 32-bit file on aarch64 GDBserver Yao Qi
2015-08-04 13:44   ` Yao Qi
2015-07-31 15:17 ` [PATCH 4/7] Get and set PC correctly on aarch64 in multi-arch Yao Qi
2015-07-31 15:17 ` [PATCH 5/7] Disable Z0 packet on aarch64 on multi-arch debugging Yao Qi
2015-07-31 15:17 ` [PATCH 2/7] New regs_info for aarch32 Yao Qi
2015-08-03 13:58   ` Pedro Alves
2015-08-03 16:34     ` Yao Qi
2015-08-03 17:11       ` Pedro Alves
2015-08-04  9:52         ` Yao Qi
2015-08-04 10:11           ` Pedro Alves
2015-08-11 19:40           ` Joel Brobecker
2015-08-18 15:21             ` Yao Qi
2015-08-18 22:42               ` Joel Brobecker
2015-08-03 14:00 ` [PATCH 0/7] Aarch64 linux GDB remote multi-arch debugging Pedro Alves
2015-08-04 13:41   ` Yao Qi

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1438355801-25798-1-git-send-email-yao.qi@linaro.org \
    --to=qiyaoltc@gmail.com \
    --cc=gdb-patches@sourceware.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).