From: Joel Brobecker <brobecker@adacore.com>
To: John Baldwin <jhb@freebsd.org>
Cc: gdb-patches@sourceware.org, Joel Brobecker <brobecker@adacore.com>
Subject: Re: [PATCH v5 04/15] Enable async mode on supported targets in target_resume.
Date: Sun, 20 Feb 2022 14:47:50 +0400 [thread overview]
Message-ID: <YhIcVjwzgs2GoDVq@adacore.com> (raw)
In-Reply-To: <20220121201631.63530-5-jhb@FreeBSD.org>
Hi John,
> Enabling async mode above the target layer removes duplicate code in
> ::resume methods of async-capable targets. Commit 5b6d1e4fa4f
> ("Multi-target support") enabled async mode in do_target_resume after
> target_resume returns which is a step in this direction. However,
> other callers of target_resume such as target_continue do not enable
> async mode. Rather than enabling async mode in each of the callers
> after target_resume returns, enable async mode at the end of
> target_resume.
Thanks for this. This is OK.
> ---
> gdb/infrun.c | 3 ---
> gdb/target.c | 3 +++
> 2 files changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/gdb/infrun.c b/gdb/infrun.c
> index 2e7ed15723f..5959c3e6658 100644
> --- a/gdb/infrun.c
> +++ b/gdb/infrun.c
> @@ -2187,9 +2187,6 @@ do_target_resume (ptid_t resume_ptid, bool step, enum gdb_signal sig)
> target_pass_signals (signal_pass);
>
> target_resume (resume_ptid, step, sig);
> -
> - if (target_can_async_p ())
> - target_async (1);
> }
>
> /* Resume the inferior. SIG is the signal to give the inferior
> diff --git a/gdb/target.c b/gdb/target.c
> index 950f2f08e31..b7033eaa930 100644
> --- a/gdb/target.c
> +++ b/gdb/target.c
> @@ -2673,6 +2673,9 @@ target_resume (ptid_t ptid, int step, enum gdb_signal signal)
> thread's stop_pc as side effect. */
> set_executing (curr_target, ptid, true);
> clear_inline_frame_state (curr_target, ptid);
> +
> + if (target_can_async_p ())
> + target_async (1);
> }
>
> /* See target.h. */
> --
> 2.34.1
>
--
Joel
next prev parent reply other threads:[~2022-02-20 10:47 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-01-21 20:16 [PATCH v5 00/15] FreeBSD target async mode and related refactoring John Baldwin
2022-01-21 20:16 ` [PATCH v5 01/15] gdbsupport: Add an event-pipe class John Baldwin
2022-01-21 20:16 ` [PATCH v5 02/15] gdb linux-nat: Convert linux_nat_event_pipe to the event_pipe class John Baldwin
2022-01-21 20:16 ` [PATCH v5 03/15] gdbserver linux-low: Convert linux_event_pipe " John Baldwin
2022-01-21 20:16 ` [PATCH v5 04/15] Enable async mode on supported targets in target_resume John Baldwin
2022-02-20 10:47 ` Joel Brobecker [this message]
2022-01-21 20:16 ` [PATCH v5 05/15] Don't enable async mode at the end of target ::resume methods John Baldwin
2022-02-20 10:49 ` Joel Brobecker
2022-01-21 20:16 ` [PATCH v5 06/15] do_target_wait_1: Clear TARGET_WNOHANG if the target isn't async John Baldwin
2022-02-22 22:38 ` Simon Marchi
2022-02-23 0:07 ` John Baldwin
2022-02-23 1:40 ` Simon Marchi
2022-02-23 15:51 ` Simon Marchi
2022-02-23 16:12 ` John Baldwin
2022-02-24 2:46 ` Simon Marchi
2022-02-24 19:02 ` John Baldwin
2022-02-24 19:16 ` Simon Marchi
2022-01-21 20:16 ` [PATCH v5 07/15] inf-ptrace: Return an IGNORE event if waitpid() fails John Baldwin
2022-02-20 11:38 ` Joel Brobecker
2022-01-21 20:16 ` [PATCH v5 08/15] inf-ptrace: Support async targets in inf_ptrace_target::wait John Baldwin
2022-01-21 20:16 ` [PATCH v5 09/15] fbsd-nat: Implement async target support John Baldwin
2022-01-21 20:16 ` [PATCH v5 10/15] fbsd-nat: Include ptrace operation in error messages John Baldwin
2022-01-21 20:16 ` [PATCH v5 11/15] fbsd-nat: Various cleanups to the ::resume entry debug message John Baldwin
2022-01-21 20:16 ` [PATCH v5 12/15] fbsd-nat: Return nullptr rather than failing ::thread_name John Baldwin
2022-01-21 20:16 ` [PATCH v5 13/15] Enable async mode in the target in attach_cmd John Baldwin
2022-01-21 20:16 ` [PATCH v5 14/15] inf-ptrace: Add an event_pipe to be used for async mode in subclasses John Baldwin
2022-01-21 20:16 ` [PATCH v5 15/15] NEWS: Note that the FreeBSD async target supports async mode John Baldwin
2022-01-22 6:28 ` Eli Zaretskii
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=YhIcVjwzgs2GoDVq@adacore.com \
--to=brobecker@adacore.com \
--cc=gdb-patches@sourceware.org \
--cc=jhb@freebsd.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).