public inbox for gdb-patches@sourceware.org
 help / color / mirror / Atom feed
* [PATCH 00/10] Improve GDB/gdbserver experience when using a local gdbserver
@ 2023-08-16 15:54 Andrew Burgess
  2023-08-16 15:54 ` [PATCH 01/10] gdb: have remote_target::extended_remote_run take the exec filename Andrew Burgess
                   ` (12 more replies)
  0 siblings, 13 replies; 46+ messages in thread
From: Andrew Burgess @ 2023-08-16 15:54 UTC (permalink / raw)
  To: gdb-patches; +Cc: Andrew Burgess

The goal of this series is to improve the user experience when using a
local (running on the same machine as GDB) gdbserver.

Outside of testing, there are still plenty of occasions when a user
can end up running gdbserver on the same machine as GDB, tools like
valgrind communicate via the remote protocol, as do many simulators
(other than those built into GDB).

This series includes the following improvements:

  1. Better handling of gdbserver's default executable and arguments.
  This applies to remote gdbservers and local gdbservers,

  2. Allow sysroot 'target:' prefix to be ignored when gdbserver is
  running locally to GDB, and

  3. Allow the user to skip setting 'remote exec-file' if gdbserver is
  running locally to GDB.

---

Andrew Burgess (10):
  gdb: have remote_target::extended_remote_run take the exec filename
  gdb: improve how 'remote exec-file' is stored and accessed
  gdb: improve show text and help text for 'remote exec-file'
  gdb/gdbserver: add new qDefaultExecAndArgs packet
  gdb: detect when gdbserver has no default executable set
  gdb: make use of is_target_filename
  gdb: add qMachineId packet
  gdb: remote filesystem can be local to GDB in some cases
  gdb: use exec_file with remote targets when possible
  gdb: remote the get_remote_exec_file function

 gdb/Makefile.in                               |   3 +
 gdb/NEWS                                      |  45 ++
 gdb/build-id.c                                |   2 +-
 gdb/configure.nat                             |   2 +-
 gdb/doc/gdb.texinfo                           | 160 ++++
 gdb/gdb_bfd.h                                 |   8 +
 gdb/linux-nat.c                               |  35 +
 gdb/nat/linux-machine-id.c                    |  60 ++
 gdb/nat/linux-machine-id.h                    |  44 ++
 gdb/remote-machine-id.c                       |  69 ++
 gdb/remote-machine-id.h                       | 108 +++
 gdb/remote.c                                  | 683 +++++++++++++++---
 gdb/testsuite/gdb.base/remote-exec-file.exp   |   7 +-
 gdb/testsuite/gdb.multi/gdb-settings.exp      |  13 +
 gdb/testsuite/gdb.server/ext-run.exp          | 131 +++-
 .../gdb.server/fetch-exec-and-args.c          |  34 +
 .../gdb.server/fetch-exec-and-args.exp        | 253 +++++++
 gdb/testsuite/gdb.server/server-local-fs.c    |  22 +
 gdb/testsuite/gdb.server/server-local-fs.exp  | 138 ++++
 gdb/testsuite/gdb.server/sysroot.exp          |  90 +--
 gdbserver/Makefile.in                         |   1 +
 gdbserver/configure.srv                       |   2 +-
 gdbserver/linux-low.cc                        |  19 +
 gdbserver/linux-low.h                         |   2 +
 gdbserver/server.cc                           |  47 ++
 gdbserver/target.cc                           |   8 +
 gdbserver/target.h                            |   9 +
 27 files changed, 1835 insertions(+), 160 deletions(-)
 create mode 100644 gdb/nat/linux-machine-id.c
 create mode 100644 gdb/nat/linux-machine-id.h
 create mode 100644 gdb/remote-machine-id.c
 create mode 100644 gdb/remote-machine-id.h
 create mode 100644 gdb/testsuite/gdb.server/fetch-exec-and-args.c
 create mode 100644 gdb/testsuite/gdb.server/fetch-exec-and-args.exp
 create mode 100644 gdb/testsuite/gdb.server/server-local-fs.c
 create mode 100644 gdb/testsuite/gdb.server/server-local-fs.exp


base-commit: a345d14fa65c2b69f2ba3abac8847b1c6a4dc656
-- 
2.25.4


^ permalink raw reply	[flat|nested] 46+ messages in thread

end of thread, other threads:[~2023-09-29  7:46 UTC | newest]

Thread overview: 46+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-08-16 15:54 [PATCH 00/10] Improve GDB/gdbserver experience when using a local gdbserver Andrew Burgess
2023-08-16 15:54 ` [PATCH 01/10] gdb: have remote_target::extended_remote_run take the exec filename Andrew Burgess
2023-08-23  9:30   ` Alexandra Petlanova Hajkova
2023-08-16 15:54 ` [PATCH 02/10] gdb: improve how 'remote exec-file' is stored and accessed Andrew Burgess
2023-08-23  8:44   ` Alexandra Petlanova Hajkova
2023-08-16 15:54 ` [PATCH 03/10] gdb: improve show text and help text for 'remote exec-file' Andrew Burgess
2023-08-23 11:36   ` Mark Wielaard
2023-08-24  8:56   ` Alexandra Petlanova Hajkova
2023-08-16 15:55 ` [PATCH 04/10] gdb/gdbserver: add new qDefaultExecAndArgs packet Andrew Burgess
2023-08-16 16:36   ` Eli Zaretskii
2023-08-28 15:35   ` Tom Tromey
2023-08-16 15:55 ` [PATCH 05/10] gdb: detect when gdbserver has no default executable set Andrew Burgess
2023-08-16 15:55 ` [PATCH 06/10] gdb: make use of is_target_filename Andrew Burgess
2023-08-23 13:35   ` Mark Wielaard
2023-08-16 15:55 ` [PATCH 07/10] gdb: add qMachineId packet Andrew Burgess
2023-08-16 16:34   ` Eli Zaretskii
2023-08-25 14:49     ` Andrew Burgess
2023-08-25 15:01       ` Eli Zaretskii
2023-09-26 14:42         ` Andrew Burgess
2023-09-29  7:45           ` Eli Zaretskii
2023-08-22  2:39   ` Thiago Jung Bauermann
2023-08-23  9:24   ` Mark Wielaard
2023-08-23 11:36     ` Andrew Burgess
2023-08-28 16:06   ` Tom Tromey
2023-08-16 15:55 ` [PATCH 08/10] gdb: remote filesystem can be local to GDB in some cases Andrew Burgess
2023-08-16 16:40   ` Eli Zaretskii
2023-08-16 15:55 ` [PATCH 09/10] gdb: use exec_file with remote targets when possible Andrew Burgess
2023-08-16 15:55 ` [PATCH 10/10] gdb: remote the get_remote_exec_file function Andrew Burgess
2023-08-23 13:42   ` Mark Wielaard
2023-08-22 10:41 ` [PATCH 00/10] Improve GDB/gdbserver experience when using a local gdbserver Alexandra Petlanova Hajkova
2023-08-23 14:32 ` Mark Wielaard
2023-08-23 15:26   ` Andrew Burgess
2023-08-25 15:34 ` [PATCHv2 " Andrew Burgess
2023-08-25 15:34   ` [PATCHv2 01/10] gdb: have remote_target::extended_remote_run take the exec filename Andrew Burgess
2023-08-25 15:34   ` [PATCHv2 02/10] gdb: improve how 'remote exec-file' is stored and accessed Andrew Burgess
2023-08-25 15:34   ` [PATCHv2 03/10] gdb: improve show text and help text for 'remote exec-file' Andrew Burgess
2023-08-25 15:34   ` [PATCHv2 04/10] gdb/gdbserver: add new qDefaultExecAndArgs packet Andrew Burgess
2023-08-26  6:46     ` Eli Zaretskii
2023-08-25 15:34   ` [PATCHv2 05/10] gdb: detect when gdbserver has no default executable set Andrew Burgess
2023-08-25 15:34   ` [PATCHv2 06/10] gdb: make use of is_target_filename Andrew Burgess
2023-08-25 15:34   ` [PATCHv2 07/10] gdb: add qMachineId packet Andrew Burgess
2023-08-26  6:54     ` Eli Zaretskii
2023-08-25 15:34   ` [PATCHv2 08/10] gdb: remote filesystem can be local to GDB in some cases Andrew Burgess
2023-08-26  6:49     ` Eli Zaretskii
2023-08-25 15:34   ` [PATCHv2 09/10] gdb: use exec_file with remote targets when possible Andrew Burgess
2023-08-25 15:34   ` [PATCHv2 10/10] gdb: remove the get_remote_exec_file function Andrew Burgess

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).