[PATCH v2 0/6] fix PR gdb/19340
Markus Metzger
markus.t.metzger@intel.com
Thu Apr 11 05:25:58 GMT 2024
Fix PR gdb/19340 by stopping replaying the current thread before disabling
recording.
While writing the test for this, I wondered whether it would also work if
there was more than one process and if some were recording while others
were replaying.
It turned out that recording one process while some other process is
replaying doesn't work. You first have to stop replaying everything
before you can continue recording. Since btrace is per inferior, this
seems like an unnecessary restriction.
The first patch fixes gdb/pr19340; the rest makes recording work together
with replaying on inferior level.
The most prominent change is probably that do_target_wait() no longer
silently switches inferiors. This infrun change requires global
maintainer approval.
Changes to v1:
- fixed a fail in a newly added test
- fixed fails in patch 5, which also caused the patch to get renamed
Markus Metzger (6):
gdb, btrace: fix pr19340
gdb, btrace: simplify gdb.btrace/multi-inferior.exp
gdb, btrace: remove record_btrace_target::supports_*()
gdb, btrace: set wait status to ignore if nothing is moving
gdb, infrun: fix silent inferior switch in do_target_wait()
gdb, btrace, infrun: per-inferior run-control
gdb/infrun.c | 63 ++++++++++++++---
gdb/linux-nat.c | 17 +++--
gdb/record-btrace.c | 78 +++++++--------------
gdb/remote.c | 22 ++++--
gdb/testsuite/gdb.btrace/multi-inferior.c | 10 ++-
gdb/testsuite/gdb.btrace/multi-inferior.exp | 33 ++++-----
gdb/testsuite/gdb.btrace/step.exp | 22 ++++--
7 files changed, 150 insertions(+), 95 deletions(-)
--
2.34.1
Intel Deutschland GmbH
Registered Address: Am Campeon 10, 85579 Neubiberg, Germany
Tel: +49 89 99 8853-0, www.intel.de <http://www.intel.de>
Managing Directors: Christin Eisenschmid, Sharon Heck, Tiffany Doon Silva
Chairperson of the Supervisory Board: Nicole Lau
Registered Office: Munich
Commercial Register: Amtsgericht Muenchen HRB 186928
More information about the Gdb-patches
mailing list