All of lore.kernel.org
 help / color / mirror / Atom feed
From: Stefan Hajnoczi <stefanha@redhat.com>
To: Gerd Hoffmann <kraxel@redhat.com>
Cc: Markus Armbruster <armbru@redhat.com>,
	qemu-devel@nongnu.org,
	"Dr. David Alan Gilbert" <dgilbert@redhat.com>
Subject: Re: [PATCH v3 0/8] [RfC] fix tracing for modules
Date: Wed, 3 Feb 2021 16:32:02 +0000	[thread overview]
Message-ID: <20210203163202.GF241524@stefanha-x1.localdomain> (raw)
In-Reply-To: <20210121125028.3247190-1-kraxel@redhat.com>

[-- Attachment #1: Type: text/plain, Size: 1488 bytes --]

On Thu, Jan 21, 2021 at 01:50:20PM +0100, Gerd Hoffmann wrote:
> First version that actually works.  Only qxl covered for this RfC,
> other modules will follow once the basics are hashed out.
> 
> v3:
>  - handle initialization of modular tracepoints.

Cool, this looks promising!

> TODO:
> Enabling modular tracepoints via -trace cmd line doesn't work yet.
> Guess we need to store the list somewhere for later re-processing.
> Error handling is tricky, specifically the "tracepoint doesn't exist"
> error.  Suggestions / ideas are welcome.

Two ideas:

Global trace event name list
----------------------------
Build *some* global information about all trace events, including
modules, into the main QEMU binary. For example, generate an array of
all trace event names so QEMU can always print an error if a
non-existent trace event name is used. (This is similar to the
trace-events-all file, which is a global list of all trace events.)

Module name prefixes
--------------------
Allow an optional module/group prefix like qxl:my_trace_event. When the
user says:

  --trace qxl:my_trace_event

QEMU knows that this trace event belongs to the "qxl" module/group. It
will not attempt to load it until the qxl module registers itself.

If "my_trace_event" doesn't exist in the qxl module:
1. If the qxl module is not loaded we don't hit an error. Nevermind.
2. When the qxl module is loaded pending events are resolved and an
   error is printed.

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

  parent reply	other threads:[~2021-02-03 16:42 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-01-21 12:50 [PATCH v3 0/8] [RfC] fix tracing for modules Gerd Hoffmann
2021-01-21 12:50 ` [PATCH v3 1/8] meson: add trace_events_config[] Gerd Hoffmann
2021-01-27 14:48   ` Stefan Hajnoczi
2021-01-21 12:50 ` [PATCH v3 2/8] meson: move up hw subdir (specifically before trace subdir) Gerd Hoffmann
2021-01-27 14:49   ` Stefan Hajnoczi
2021-01-21 12:50 ` [PATCH v3 3/8] meson: add module_trace & module_trace_src Gerd Hoffmann
2021-01-27 15:03   ` Stefan Hajnoczi
2021-01-21 12:50 ` [PATCH v3 4/8] meson: move qxl trace events to separate file Gerd Hoffmann
2021-01-27 15:33   ` Stefan Hajnoczi
2021-03-22 11:43   ` Daniel P. Berrangé
2021-01-21 12:50 ` [PATCH v3 5/8] trace: iter init tweaks Gerd Hoffmann
2021-02-03 16:13   ` Stefan Hajnoczi
2021-01-21 12:50 ` [PATCH v3 6/8] trace: add trace_event_iter_init_group Gerd Hoffmann
2021-02-03 16:16   ` Stefan Hajnoczi
2021-01-21 12:50 ` [PATCH v3 7/8] trace/simple: pass iter to st_write_event_mapping Gerd Hoffmann
2021-02-03 16:17   ` Stefan Hajnoczi
2021-01-21 12:50 ` [PATCH v3 8/8] trace/simple: add st_init_group Gerd Hoffmann
2021-02-03 16:22   ` Stefan Hajnoczi
2021-02-03 16:32 ` Stefan Hajnoczi [this message]
2021-02-22 15:13   ` [PATCH v3 0/8] [RfC] fix tracing for modules Gerd Hoffmann
2021-03-22 11:36     ` Stefan Hajnoczi
2021-03-22 11:46       ` Daniel P. Berrangé
2021-03-29 16:32         ` Stefan Hajnoczi
2021-03-22 12:03     ` Daniel P. Berrangé
2021-03-26 12:47       ` Gerd Hoffmann
2021-03-29  9:23         ` Daniel P. Berrangé
2021-03-29  9:48           ` Gerd Hoffmann
2021-03-29 10:02             ` Daniel P. Berrangé
2021-03-31 10:55               ` Gerd Hoffmann
2021-04-09  9:10               ` Gerd Hoffmann
2021-04-09 13:12       ` Gerd Hoffmann
2021-04-09 13:17         ` Daniel P. Berrangé
2021-04-12 13:07           ` Gerd Hoffmann
2021-04-15 13:10             ` Daniel P. Berrangé

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=20210203163202.GF241524@stefanha-x1.localdomain \
    --to=stefanha@redhat.com \
    --cc=armbru@redhat.com \
    --cc=dgilbert@redhat.com \
    --cc=kraxel@redhat.com \
    --cc=qemu-devel@nongnu.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.