All of lore.kernel.org
 help / color / mirror / Atom feed
From: Peter Maydell <peter.maydell@linaro.org>
To: Stefan Hajnoczi <stefanha@redhat.com>
Cc: "QEMU Developers" <qemu-devel@nongnu.org>,
	"Lluís Vilanova" <vilanova@ac.upc.edu>
Subject: Re: [Qemu-devel] [PULL 4/5] trace: Multi-backend tracing
Date: Mon, 16 Jun 2014 10:58:38 +0100	[thread overview]
Message-ID: <CAFEAcA_e+=0U5b_yGPF5Gt7CcFcMw=c4kK=P9xBUOdaBXL_14Q@mail.gmail.com> (raw)
In-Reply-To: <1402327429-20941-5-git-send-email-stefanha@redhat.com>

On 9 June 2014 16:23, Stefan Hajnoczi <stefanha@redhat.com> wrote:
> From: Lluís Vilanova <vilanova@ac.upc.edu>
>
> Adds support to compile QEMU with multiple tracing backends at the same time.
>
> For example, you can compile QEMU with:
>
>   $ ./configure --enable-trace-backends=ftrace,dtrace
>
> Where 'ftrace' can be handy for having an in-flight record of events, and 'dtrace' can be later used to extract more information from the system.
>
> This patch allows having both available without recompiling QEMU.

Hi. This patch causes QEMU to fail to do a rebuild unless
you do a distclean, because:

 * the trace headers are in GENERATED_HEADERS, and so
   Makefile depends on them
 * this means that when Make does its "is any makefile or
   include out of date and needing a rebuild?" check, as
   well as possibly running configure (to update config-host.mak)
   it will also rebuild GENERATED_HEADERS under the "old"
   config-host.mak regime
 * if you run the new trace header rules with an old
   config-host.mak then the tracetool script will barf
   (printing its usage message) because it has been passed
   an empty string for the list of backends.

Paolo suggested that adding
$(GENERATED_HEADERS): config-host.mak

to the makefile might fix this. Unfortunately it doesn't help
much, because although it ensures that configure gets run first,
make won't reread any of its files (including config-host.mak)
until it has rebuilt all of them, so we still run the header
rules with the old config-host.mak. It does mean that configure
gets run first, so you can guarantee that manually rerunning
make will work (without the dependency then the headers might
get built first and fail before make gets round to running
configure).

thanks
-- PMM

  reply	other threads:[~2014-06-16  9:59 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-06-09 15:23 [Qemu-devel] [PULL v2 0/5] Tracing pull request Stefan Hajnoczi
2014-06-09 15:23 ` [Qemu-devel] [PULL 1/5] trace: add pid field to simpletrace record Stefan Hajnoczi
2014-06-09 15:23 ` [Qemu-devel] [PULL 2/5] simpletrace: add support for trace record pid field Stefan Hajnoczi
2014-06-09 15:23 ` [Qemu-devel] [PULL 3/5] trace: Replace error with warning if event is not defined Stefan Hajnoczi
2014-06-09 15:23 ` [Qemu-devel] [PULL 4/5] trace: Multi-backend tracing Stefan Hajnoczi
2014-06-16  9:58   ` Peter Maydell [this message]
2014-06-09 15:23 ` [Qemu-devel] [PULL 5/5] trace: Replace fprintf with error_report and print location Stefan Hajnoczi
2014-06-09 16:03 ` [Qemu-devel] [PULL v2 0/5] Tracing pull request Peter Maydell
  -- strict thread matches above, loose matches on Subject: below --
2014-06-09 13:45 [Qemu-devel] [PULL 0/5] Tracing patches Stefan Hajnoczi
2014-06-09 13:45 ` [Qemu-devel] [PULL 4/5] trace: Multi-backend tracing Stefan Hajnoczi

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='CAFEAcA_e+=0U5b_yGPF5Gt7CcFcMw=c4kK=P9xBUOdaBXL_14Q@mail.gmail.com' \
    --to=peter.maydell@linaro.org \
    --cc=qemu-devel@nongnu.org \
    --cc=stefanha@redhat.com \
    --cc=vilanova@ac.upc.edu \
    /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.