public inbox for gdb-patches@sourceware.org
 help / color / mirror / Atom feed
From: Pedro Alves <pedro@palves.net>
To: gdb-patches@sourceware.org
Subject: [PATCH 0/8] Step over thread exit improvements/fixes + AMD GPU
Date: Thu, 14 Dec 2023 20:22:30 +0000	[thread overview]
Message-ID: <20231214202238.1065676-1-pedro@palves.net> (raw)

This series is the result of making step-over-thread-exit work
properly with the AMD GPU target.

It includes some improvements to
gdb.threads/step-over-thread-exit.exp, a few core fixes, and then AMD
GPU target fixes.

Finally, the last two patches include tests that we are carrying
downstream, but that unfortunately can't work with upstream GDB yet,
because upstream doesn't understand the DWARF extensions that we are
working hard to get into DWARF 6, so upstream is missing proper
unwinding and accessing variables.  I include them in the series so
reading the patches makes more sense, but I don't plan on pushing
them.  Unless we are OK with adding them upstream with some early
return, effectivelly making them nops.

I sent the first two patches as a separate series last month, and
Simon & Lancelot have meanwhile reviewed this whole series internally
at AMD, which resulted in some further improvements in those first
patches (as well as in the others).

Pedro Alves (8):
  gdb.threads/step-over-thread-exit.exp improvements
  Ensure selected thread after thread exit stop
  displaced_step_finish: Don't fetch the regcache of exited threads
  Step over thread exit, always delete the thread non-silently
  Fix thread target ID of exited waves
  Fix handling of vanishing threads that were stepping/stopping
  Add tests for s_endpgm handling
  Add tests for handling of vanishing threads that were
    stepping/stopping

 gdb/amd-dbgapi-target.c                       | 313 ++++++++++++++----
 gdb/infrun.c                                  |  31 +-
 gdb/observable.c                              |   1 +
 gdb/observable.h                              |   5 +
 gdb/regcache.c                                |   2 +
 .../gdb.rocm/continue-over-kernel-exit.cpp    |  66 ++++
 .../gdb.rocm/continue-over-kernel-exit.exp    | 165 +++++++++
 .../gdb.rocm/step-over-kernel-exit.cpp        |  48 +++
 .../gdb.rocm/step-over-kernel-exit.exp        | 108 ++++++
 .../gdb.threads/step-over-thread-exit.c       |  16 +-
 .../gdb.threads/step-over-thread-exit.exp     | 127 +++++--
 gdb/thread.c                                  |   2 +
 12 files changed, 792 insertions(+), 92 deletions(-)
 create mode 100644 gdb/testsuite/gdb.rocm/continue-over-kernel-exit.cpp
 create mode 100644 gdb/testsuite/gdb.rocm/continue-over-kernel-exit.exp
 create mode 100644 gdb/testsuite/gdb.rocm/step-over-kernel-exit.cpp
 create mode 100644 gdb/testsuite/gdb.rocm/step-over-kernel-exit.exp


base-commit: 1d2f86b6b74e6caae77951353a4c353ce9816374
-- 
2.43.0


             reply	other threads:[~2023-12-14 20:22 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-12-14 20:22 Pedro Alves [this message]
2023-12-14 20:22 ` [PATCH 1/8] gdb.threads/step-over-thread-exit.exp improvements Pedro Alves
2023-12-14 20:22 ` [PATCH 2/8] Ensure selected thread after thread exit stop Pedro Alves
2023-12-14 20:22 ` [PATCH 3/8] displaced_step_finish: Don't fetch the regcache of exited threads Pedro Alves
2023-12-14 20:22 ` [PATCH 4/8] Step over thread exit, always delete the thread non-silently Pedro Alves
2023-12-14 20:22 ` [PATCH 5/8] Fix thread target ID of exited waves Pedro Alves
2023-12-15 10:51   ` Lancelot SIX
2023-12-14 20:22 ` [PATCH 6/8] Fix handling of vanishing threads that were stepping/stopping Pedro Alves
2023-12-15 10:51   ` Lancelot SIX
2023-12-14 20:22 ` [PATCH 7/8] Add tests for s_endpgm handling Pedro Alves
2023-12-14 20:22 ` [PATCH 8/8] Add tests for handling of vanishing threads that were stepping/stopping Pedro Alves
2023-12-20 21:24 ` [PATCH 0/8] Step over thread exit improvements/fixes + AMD GPU Pedro Alves

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=20231214202238.1065676-1-pedro@palves.net \
    --to=pedro@palves.net \
    --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).