Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Doug Evans <dje@google.com>
To: Gary Benson <gbenson@redhat.com>
Cc: Pedro Alves <palves@redhat.com>,
	gdb-patches <gdb-patches@sourceware.org>
Subject: Re: [PATCH 3/9 v7] Introduce target_{stop,continue}_ptid
Date: Mon, 15 Sep 2014 16:00:00 -0000	[thread overview]
Message-ID: <CADPb22Qs-Xi7DV+8OV32ao8KUw6OB-8F3wbKB3+Fypd7Rjd64A@mail.gmail.com> (raw)
In-Reply-To: <20140915100736.GA13503@blade.nx>

On Mon, Sep 15, 2014 at 3:07 AM, Gary Benson <gbenson@redhat.com> wrote:
> Doug Evans wrote:
>> On Fri, Sep 12, 2014 at 11:19 AM, Pedro Alves <palves@redhat.com> wrote:
>> > On 09/12/2014 07:08 PM, Doug Evans wrote:
>> > > Pedro Alves wrote:
>> > > > I just now noticed the elephant in the room -- target_stop
>> > > > is asynchronous, doesn't wait for a stop, while and
>> > > > target_stop_ptid is synchronous.  [...]
>> > >
>> > > If the above code is right, I think a clarifying comment is
>> > > required somewhere.  It's odd that one can call
>> > > agent_run_command when the inferior may or may not be stopped
>> > > yet.  [Or is there a bug here? - if I'm reading the gdbserver
>> > > version correctly it first waits for the inferior to stop]
>> >
>> > It's a bug.
>> >
>> > (Note that the GDB side interfaces with an out-of-tree
>> > agent, not GDBserver's agent.  I don't know the status of
>> > that agent.)
>>
>> Data point that target_stop should be named target_stop_async?
>
> Ok, can I get a summary of this thread, I'm struggling to follow it.
>
>  a) What should the functions be called:
>      - target_stop_async / target_stop_wait
>      - target_continue_async / target_continue_no_signal
>      - something else?
>
>  b) Is there a bug here I need to address?

At this point I think we're still in discussion mode, there are no
conclusions/agreements yet, except for the agreement to use
target_continue_with_no_signal instead of target_continue_ptid.

To advance the discussion,
the async case is the subtle case IMO.  Evidently (and I'm just going
by what I see, there may be more data here) someone (*1) looked at the
name "target_stop" and thought it was async (which is probably what
I'd do).  The function comment doesn't specify.  One could argue it's
sufficient to just fix the function comment, but if we're going to
have a mix of similar functions, some of which are async and some
sync, then IMO we should also make the difference stand out in the
code where it's read.  I'd be happy with a convention where all async
functions ended with _async or _no_wait (the latter reads better to
me), but I'm guessing I'd be happy with a different convention as
well.

FAOD,
there is a bug, but it's not one you specifically need to address.
I pointed it out because it's a data point that contributes to the discussion.

(*1): I've looked at git log and blame. I'm speaking generically here
because I think this is unlikely to be a one-off kind of issue. Plus I
can well imagine me making a similar mistake too.  Plus the bug got
through code review.


  reply	other threads:[~2014-09-15 16:00 UTC|newest]

Thread overview: 53+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-08-29 13:57 [PATCH 0/9 v7] Common code cleanups Gary Benson
2014-08-29 13:51 ` [PATCH 2/9 v7] Introduce target/target.h Gary Benson
2014-09-10 10:17   ` Pedro Alves
2014-08-29 13:51 ` [PATCH 3/9 v7] Introduce target_{stop,continue}_ptid Gary Benson
2014-09-10 10:39   ` Pedro Alves
2014-09-10 17:45   ` Doug Evans
2014-09-11 10:27     ` Gary Benson
2014-09-12 11:53       ` Pedro Alves
2014-09-12 16:53         ` Doug Evans
2014-09-12 17:20           ` Pedro Alves
2014-09-12 17:38             ` Doug Evans
2014-09-12 17:41               ` Pedro Alves
2014-09-12 18:08                 ` Doug Evans
2014-09-12 18:19                   ` Pedro Alves
2014-09-12 18:29                     ` Doug Evans
2014-09-15 10:07                       ` Gary Benson
2014-09-15 16:00                         ` Doug Evans [this message]
2014-09-15 18:34                           ` Doug Evans
2014-09-16  9:49                           ` Gary Benson
2014-09-16 10:45                             ` Pedro Alves
2014-09-16 10:36                           ` Pedro Alves
2014-09-16 21:18                             ` Doug Evans
2014-09-17 11:30                               ` Pedro Alves
2014-09-17 18:20                                 ` Doug Evans
2014-09-19 15:51                                   ` Pedro Alves
2014-09-19 20:47                                     ` Doug Evans
2014-09-16  9:55                       ` Pedro Alves
2014-09-12 12:00   ` Pedro Alves
2014-09-12 17:10     ` Doug Evans
2014-08-29 13:51 ` [PATCH 1/9 v7] Introduce show_debug_regs Gary Benson
2014-09-10 10:09   ` Pedro Alves
2014-08-29 13:51 ` [PATCH 4/9 v7] Introduce target/symbol.h Gary Benson
2014-09-10 11:59   ` Pedro Alves
2014-09-11 10:47     ` Gary Benson
2014-08-29 13:52 ` [PATCH 8/9 v7] Remove GDBSERVER uses from i386-dregs.c Gary Benson
2014-09-10 13:15   ` Pedro Alves
2014-08-29 13:52 ` [PATCH 7/9 v7] Remove GDBSERVER uses from linux-btrace.c Gary Benson
2014-09-10 13:12   ` Pedro Alves
2014-08-29 13:59 ` [PATCH 9/9 v7] Remove one GDBSERVER use from linux-waitpid.c Gary Benson
2014-09-10 13:29   ` Pedro Alves
2014-09-12 10:03     ` [PATCH v8] Clarify GDBSERVER use in linux-waitpid.c Gary Benson
2014-09-12 10:05       ` Pedro Alves
2014-09-12 11:09         ` Gary Benson
2014-08-29 14:03 ` [PATCH 5/9 v7] Introduce common-regcache.h Gary Benson
2014-09-10 13:09   ` Pedro Alves
2014-09-10 18:00   ` Doug Evans
2014-09-11 11:02     ` Gary Benson
2014-09-11 17:12       ` Doug Evans
2014-09-12  9:45         ` Gary Benson
2014-09-12 16:28           ` Doug Evans
2014-08-29 14:46 ` [PATCH 6/9 v7] Include common-defs.h instead of defs.h/server.h in shared code Gary Benson
2014-09-10 13:11   ` Pedro Alves
2014-09-10 22:34 ` [PATCH 0/9 v7] Common code cleanups Doug Evans

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=CADPb22Qs-Xi7DV+8OV32ao8KUw6OB-8F3wbKB3+Fypd7Rjd64A@mail.gmail.com \
    --to=dje@google.com \
    --cc=gbenson@redhat.com \
    --cc=gdb-patches@sourceware.org \
    --cc=palves@redhat.com \
    /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