Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Yao Qi <yao@codesourcery.com>
To: <gdb-patches@sourceware.org>
Subject: [PATCH v4 0/5] MI notification on trace started/stopped
Date: Tue, 02 Apr 2013 02:33:00 -0000	[thread overview]
Message-ID: <1364869917-12803-1-git-send-email-yao@codesourcery.com> (raw)
In-Reply-To: <1358838232-13319-1-git-send-email-yao@codesourcery.com>

Hi,
The V3.1 can't be applied to CVS trunk clearly, so I resolved these
conflicts and submit them again.

All doc bits were approved by Eli in V3.1.  Regression tested them
on x86_64-linux with {unix, native-gdbserver} x {sync, async}.  Is
it OK?  Below is the introduction of this series.  People who are
familiar with this series, please skip it.

This patch series adds the MI notifications of 'trace-started' and
'trace-stopped', which are emitted when

  1) trace is started or stopped by commands in GDB,
  2) trace is stopped due to some reasons in the remote stub, such as
trace buffer full.

With these notifications, MI front-end can show the status of trace
up to date.

Patch 4/5 is to address #1, adding new MI notifications and
notifying observers when the commands are called.  #2 needs more work
here, because GDB doesn't know the trace is stopped in the remote
stub.  So we need an async remote notification 'Trace' to tell GDB.
That is what patch 3/5 about.  Patch 5/5 is to use this async remote
notification 'Trace' and notify trace_changed observer.

Patch 1/5 and 2/5 are the enhancement to the async remote
notification, which is needed by the rest of patches in this series.
Patch 1/5 adds "annex" for notification, which is helpful 1) to give
more information on each event of notification, 2) to query supported
notifications on "annex" level.  Patch 2/5 teaches both GDB and
GDBserver to query supported notifications and annexes in the other
side so that 1) GDBserver doesn't send notifications that GDB doesn't
understand, 2) GDB doesn't have to fetch status from the GDBserver if
a certain notification is supported by GDBserver.


 gdb/Makefile.in                              |   11 +-
 gdb/NEWS                                     |    2 +
 gdb/common/common-notif.c                    |  186 ++++++++++++++++++++++++++
 gdb/common/common-notif.h                    |   92 +++++++++++++
 gdb/doc/gdb.texinfo                          |   48 ++++++-
 gdb/doc/observer.texi                        |    6 +
 gdb/gdbserver/Makefile.in                    |    8 +-
 gdb/gdbserver/notif.c                        |   63 ++++++++-
 gdb/gdbserver/notif.h                        |   23 ++--
 gdb/gdbserver/server.c                       |   20 +++-
 gdb/gdbserver/tracepoint.c                   |   36 +++++
 gdb/mi/mi-cmds.c                             |    6 +-
 gdb/mi/mi-interp.c                           |   22 +++
 gdb/mi/mi-main.h                             |    2 +
 gdb/remote-notif-trace.c                     |   86 ++++++++++++
 gdb/remote-notif.c                           |   86 +++++++++++-
 gdb/remote-notif.h                           |   18 +--
 gdb/remote.c                                 |   37 ++++-
 gdb/testsuite/gdb.trace/mi-trace-changed.exp |  149 +++++++++++++++++++++
 gdb/tracepoint.c                             |    4 +
 20 files changed, 851 insertions(+), 54 deletions(-)
 create mode 100644 gdb/common/common-notif.c
 create mode 100644 gdb/common/common-notif.h
 create mode 100644 gdb/remote-notif-trace.c
 create mode 100644 gdb/testsuite/gdb.trace/mi-trace-changed.exp

-- 
1.7.7.6


  parent reply	other threads:[~2013-04-02  2:33 UTC|newest]

Thread overview: 43+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-01-22  7:05 [PATCH 0/5] MI notification on trace started/stopped (V3) Yao Qi
2013-01-22  7:05 ` [PATCH 2/5] Query supported notifications by qSupported Yao Qi
2013-01-22  8:09   ` Eli Zaretskii
2013-01-22  8:41     ` Yao Qi
2013-01-22 10:26       ` Eli Zaretskii
2013-01-22  7:05 ` [PATCH 3/5] async remote notification 'Trace' Yao Qi
2013-01-22  8:06   ` Eli Zaretskii
2013-01-22  7:05 ` [PATCH 1/5] Add annex in a async remote notification Yao Qi
2013-01-22  8:06   ` Eli Zaretskii
2013-02-16  3:40     ` Yao Qi
2013-02-16  9:27       ` Eli Zaretskii
2013-03-29 17:17         ` Yao Qi
2013-03-31  0:39           ` Eli Zaretskii
2013-01-22  7:06 ` [PATCH 4/5] MI notification on trace started/stopped:basic Yao Qi
2013-01-22  8:11   ` Eli Zaretskii
2013-01-22  7:06 ` [PATCH 5/5] MI notification on trace stop: triggered by remote Yao Qi
2013-01-30  4:00 ` [ping]: [PATCH 0/5] MI notification on trace started/stopped (V3) Yao Qi
2013-02-07 12:41   ` [ping 2]: " Yao Qi
2013-02-16  4:01 ` [PATCH 0/5] MI notification on trace started/stopped (V3.1) Yao Qi
2013-02-16  4:01   ` [PATCH 1/5] Add annex in a async remote notification Yao Qi
2013-02-16  9:27     ` Eli Zaretskii
2013-02-16  4:02   ` [PATCH 2/5] Query supported notifications by qSupported Yao Qi
2013-02-16  9:33     ` Eli Zaretskii
2013-03-11  9:26       ` Yao Qi
2013-03-11 16:59         ` Eli Zaretskii
2013-02-16  4:02   ` [PATCH 3/5] async remote notification 'Trace' Yao Qi
2013-02-16  9:34     ` Eli Zaretskii
2013-02-16  4:02   ` [PATCH 4/5] MI notification on trace started/stopped:basic Yao Qi
2013-02-16  9:36     ` Eli Zaretskii
2013-02-16  4:02   ` [PATCH 5/5] MI notification on trace stop: triggered by remote Yao Qi
2013-02-25  3:14   ` ping: [PATCH 0/5] MI notification on trace started/stopped (V3.1) Yao Qi
2013-03-04  2:34   ` ping^2 : " Yao Qi
2013-04-02  2:33 ` Yao Qi [this message]
2013-04-02  3:15   ` [PATCH 2/5] Query supported notifications by qSupported Yao Qi
2013-04-02  3:58   ` [PATCH 3/5] async remote notification 'Trace' Yao Qi
2013-04-02 12:46   ` [PATCH 5/5] MI notification on trace stop: triggered by remote Yao Qi
2013-04-02 13:07   ` [PATCH 4/5] MI notification on trace started/stopped:basic Yao Qi
2013-04-02 13:30   ` [PATCH 1/5] Add annex in a async remote notification Yao Qi
2013-04-10 15:46   ` [PATCH v4 0/5] MI notification on trace started/stopped Yao Qi
2013-04-17 14:37     ` [ping 2]: " Yao Qi
2013-04-18 15:16       ` Pedro Alves
2013-04-18 16:14         ` Yao Qi
2013-06-04  9:20         ` Yao Qi

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=1364869917-12803-1-git-send-email-yao@codesourcery.com \
    --to=yao@codesourcery.com \
    --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