From: Paolo Bonzini <pbonzini@redhat.com>
To: "Lluís Vilanova" <vilanova@ac.upc.edu>
Cc: qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [PATCH v3 03/24] trace: Let the user specify her own trace-events file
Date: Fri, 26 Apr 2013 17:21:57 +0200 [thread overview]
Message-ID: <517A9B95.6010604@redhat.com> (raw)
In-Reply-To: <20130421191146.8947.68752.stgit@fimbulvetr.bsc.es>
Il 21/04/2013 21:11, Lluís Vilanova ha scritto:
> With this option the user can perform multiple builds of QEMU with different
> tracing event properties.
I don't understand why this is useful? If it is just to add/remove
"disable" here and there, surely the user should be using git and
different branches?
Paolo
> Signed-off-by: Lluís Vilanova <vilanova@ac.upc.edu>
> ---
> Makefile.target | 2 +-
> configure | 19 +++++++++++++++++++
> trace/Makefile.objs | 10 +++++-----
> 3 files changed, 25 insertions(+), 6 deletions(-)
>
> diff --git a/Makefile.target b/Makefile.target
> index 2bd6d14..f382559 100644
> --- a/Makefile.target
> +++ b/Makefile.target
> @@ -47,7 +47,7 @@ else
> TARGET_TYPE=system
> endif
>
> -$(QEMU_PROG).stp: $(SRC_PATH)/trace-events
> +$(QEMU_PROG).stp: $(TRACE_EVENTS)
> $(call quiet-command,$(TRACETOOL) \
> --format=stap \
> --backend=$(TRACE_BACKEND) \
> diff --git a/configure b/configure
> index 73df181..a3bd336 100755
> --- a/configure
> +++ b/configure
> @@ -221,6 +221,7 @@ blobs="yes"
> pkgversion=""
> pie=""
> zero_malloc=""
> +trace_events=`dirname $0`/trace-events
> trace_backend="nop"
> trace_file="trace"
> spice=""
> @@ -639,6 +640,8 @@ for opt do
> ;;
> --target-list=*) target_list="$optarg"
> ;;
> + --with-trace-events=*) trace_events="$optarg"
> + ;;
> --enable-trace-backend=*) trace_backend="$optarg"
> ;;
> --with-trace-file=*) trace_file="$optarg"
> @@ -1158,6 +1161,7 @@ echo " --enable-docs enable documentation build"
> echo " --disable-docs disable documentation build"
> echo " --disable-vhost-net disable vhost-net acceleration support"
> echo " --enable-vhost-net enable vhost-net acceleration support"
> +echo " --with-trace-events=PATH file with tracing events description (default: $trace_events)"
> echo " --enable-trace-backend=B Set trace backend"
> echo " Available backends:" $($python "$source_path"/scripts/tracetool.py --list-backends)
> echo " --with-trace-file=NAME Full PATH,NAME of file to store traces"
> @@ -3009,6 +3013,18 @@ if compile_prog "" "" ; then
> fi
>
> ##########################################
> +# check if trace-events file exists
> +
> +if test ! -f "$trace_events"; then
> + echo
> + echo "Error: the given trace-events file does not exist"
> + echo
> + exit 1
> +else
> + trace_events=`readlink -f "$trace_events"`
> +fi
> +
> +##########################################
> # check if trace backend exists
>
> $python "$source_path/scripts/tracetool.py" "--backend=$trace_backend" --check-backend > /dev/null 2> /dev/null
> @@ -3418,6 +3434,7 @@ echo "sigev_thread_id $sigev_thread_id"
> echo "uuid support $uuid"
> echo "libcap-ng support $cap_ng"
> echo "vhost-net support $vhost_net"
> +echo "Trace events $trace_events"
> echo "Trace backend $trace_backend"
> echo "Trace output file $trace_file-<pid>"
> echo "spice support $spice ($spice_protocol_version/$spice_server_version)"
> @@ -3810,6 +3827,8 @@ bsd)
> ;;
> esac
>
> +echo "TRACE_EVENTS=$trace_events" >> $config_host_mak
> +
> # use default implementation for tracing backend-specific routines
> trace_default=yes
> echo "TRACE_BACKEND=$trace_backend" >> $config_host_mak
> diff --git a/trace/Makefile.objs b/trace/Makefile.objs
> index a043072..bf0a965 100644
> --- a/trace/Makefile.objs
> +++ b/trace/Makefile.objs
> @@ -4,7 +4,7 @@
> # Auto-generated event descriptions
>
> $(obj)/generated-events.h: $(obj)/generated-events.h-timestamp
> -$(obj)/generated-events.h-timestamp: $(SRC_PATH)/trace-events
> +$(obj)/generated-events.h-timestamp: $(TRACE_EVENTS)
> $(call quiet-command,$(TRACETOOL) \
> --format=events-h \
> --backend=events \
> @@ -12,7 +12,7 @@ $(obj)/generated-events.h-timestamp: $(SRC_PATH)/trace-events
> @cmp -s $@ $(patsubst %-timestamp,%,$@) || cp $@ $(patsubst %-timestamp,%,$@)
>
> $(obj)/generated-events.c: $(obj)/generated-events.c-timestamp $(BUILD_DIR)/config-host.mak
> -$(obj)/generated-events.c-timestamp: $(SRC_PATH)/trace-events
> +$(obj)/generated-events.c-timestamp: $(TRACE_EVENTS)
> $(call quiet-command,$(TRACETOOL) \
> --format=events-c \
> --backend=events \
> @@ -27,7 +27,7 @@ util-obj-y += generated-events.o
>
> $(obj)/generated-tracers.h: $(obj)/generated-tracers.h-timestamp
> @cmp -s $< $@ || cp $< $@
> -$(obj)/generated-tracers.h-timestamp: $(SRC_PATH)/trace-events $(BUILD_DIR)/config-host.mak
> +$(obj)/generated-tracers.h-timestamp: $(TRACE_EVENTS) $(BUILD_DIR)/config-host.mak
> $(call quiet-command,$(TRACETOOL) \
> --format=h \
> --backend=$(TRACE_BACKEND) \
> @@ -39,7 +39,7 @@ $(obj)/generated-tracers.h-timestamp: $(SRC_PATH)/trace-events $(BUILD_DIR)/conf
> ifneq ($(TRACE_BACKEND),dtrace)
> $(obj)/generated-tracers.c: $(obj)/generated-tracers.c-timestamp
> @cmp -s $< $@ || cp $< $@
> -$(obj)/generated-tracers.c-timestamp: $(SRC_PATH)/trace-events $(BUILD_DIR)/config-host.mak
> +$(obj)/generated-tracers.c-timestamp: $(TRACE_EVENTS) $(BUILD_DIR)/config-host.mak
> $(call quiet-command,$(TRACETOOL) \
> --format=c \
> --backend=$(TRACE_BACKEND) \
> @@ -57,7 +57,7 @@ endif
> # rule file. So we use '.dtrace' instead
> ifeq ($(TRACE_BACKEND),dtrace)
> $(obj)/generated-tracers.dtrace: $(obj)/generated-tracers.dtrace-timestamp
> -$(obj)/generated-tracers.dtrace-timestamp: $(SRC_PATH)/trace-events $(BUILD_DIR)/config-host.mak
> +$(obj)/generated-tracers.dtrace-timestamp: $(TRACE_EVENTS) $(BUILD_DIR)/config-host.mak
> $(call quiet-command,$(TRACETOOL) \
> --format=d \
> --backend=$(TRACE_BACKEND) \
>
>
>
next prev parent reply other threads:[~2013-04-26 15:22 UTC|newest]
Thread overview: 43+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-04-21 19:11 [Qemu-devel] [RFC][PATCH v3 00/24] instrument: Let the user wrap/override specific event tracing routines Lluís Vilanova
2013-04-21 19:11 ` [Qemu-devel] [PATCH v3 01/24] instrument: Add documentation Lluís Vilanova
2013-04-21 19:11 ` [Qemu-devel] [PATCH v3 02/24] trace: [simple] Do not include "trace/simple.h" in generated tracer headers Lluís Vilanova
2013-04-21 19:11 ` [Qemu-devel] [PATCH v3 03/24] trace: Let the user specify her own trace-events file Lluís Vilanova
2013-04-26 15:21 ` Paolo Bonzini [this message]
2013-04-26 18:28 ` Lluís Vilanova
2013-04-21 19:11 ` [Qemu-devel] [PATCH v3 04/24] tracetool: Use method 'Event.api' to get the name of public routines Lluís Vilanova
2013-04-21 19:11 ` [Qemu-devel] [PATCH v3 05/24] trace: Minimize inclusions of "qemu-common.h" to avoid inclusion loops Lluís Vilanova
2013-04-26 15:23 ` Paolo Bonzini
2013-04-21 19:12 ` [Qemu-devel] [PATCH v3 06/24] instrument: [none] Add null instrumentation Lluís Vilanova
2013-04-21 19:12 ` [Qemu-devel] [PATCH v3 07/24] system: [linux] Use absolute include path for linux-headers Lluís Vilanova
2013-04-26 15:17 ` Paolo Bonzini
2013-04-21 19:12 ` [Qemu-devel] [PATCH v3 08/24] instrument: [static] Call statically linked user-provided routines Lluís Vilanova
2013-04-21 19:12 ` [Qemu-devel] [PATCH v3 09/24] build: Add variable 'tools-obj-y' for tool-only files Lluís Vilanova
2013-04-21 19:12 ` [Qemu-devel] [PATCH v3 10/24] instrument: [dynamic] Call dynamically linked user-provided routines Lluís Vilanova
2013-04-21 19:12 ` [Qemu-devel] [PATCH v3 11/24] qapi: Add a primitive to include other files from a QAPI schema file Lluís Vilanova
2013-04-21 19:12 ` [Qemu-devel] [PATCH v3 12/24] qapi: [trivial] Set the input root directory when parsing QAPI files Lluís Vilanova
2013-04-21 19:12 ` [Qemu-devel] [PATCH v3 13/24] qapi: [trivial] Allow user to use 'args' as an argument name Lluís Vilanova
2013-04-21 19:12 ` [Qemu-devel] [PATCH v3 14/24] instrument: Add internal control interface Lluís Vilanova
2013-04-26 14:08 ` Eric Blake
2013-04-26 15:11 ` Paolo Bonzini
2013-04-26 15:25 ` Lluís Vilanova
2013-04-26 15:27 ` Paolo Bonzini
2013-04-21 19:12 ` [Qemu-devel] [PATCH v3 15/24] instrument: [qmp, qapi] Add " Lluís Vilanova
2013-04-21 19:12 ` [Qemu-devel] [PATCH v3 16/24] instrument: [hmp] " Lluís Vilanova
2013-04-21 19:13 ` [Qemu-devel] [PATCH v3 17/24] Let makefiles add entries to the set of target architecture objects Lluís Vilanova
2013-04-21 19:13 ` [Qemu-devel] [PATCH v3 18/24] instrument: Add commandline options to start with an instrumentation library Lluís Vilanova
2013-04-21 19:13 ` [Qemu-devel] [PATCH v3 19/24] instrument: Add client-side API to enumerate events Lluís Vilanova
2013-04-21 19:13 ` [Qemu-devel] [PATCH v3 20/24] instrument: Add client-side API to control tracing state of events Lluís Vilanova
2013-04-21 19:13 ` [Qemu-devel] [PATCH v3 21/24] instrument: Add client-side API to control event instrumentation Lluís Vilanova
2013-04-21 19:13 ` [Qemu-devel] [PATCH v3 22/24] build: Fix installation of target-dependant files Lluís Vilanova
2013-04-26 15:24 ` Paolo Bonzini
2013-04-26 15:27 ` Peter Maydell
2013-04-21 19:13 ` [Qemu-devel] [PATCH v3 23/24] instrument: Install headers for dynamic instrumentation clients Lluís Vilanova
2013-04-21 19:13 ` [Qemu-devel] [PATCH v3 24/24] trace: Do not use the word 'new' in event arguments Lluís Vilanova
2013-04-24 11:17 ` [Qemu-devel] [RFC][PATCH v3 00/24] instrument: Let the user wrap/override specific event tracing routines Stefan Hajnoczi
2013-04-24 12:17 ` Lluís Vilanova
2013-04-25 12:39 ` Stefan Hajnoczi
2013-04-26 12:15 ` Lluís Vilanova
2013-04-26 15:10 ` Stefan Hajnoczi
2013-04-28 19:25 ` Lluís Vilanova
2013-05-01 11:54 ` Stefan Hajnoczi
2013-05-01 14:34 ` Lluís Vilanova
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=517A9B95.6010604@redhat.com \
--to=pbonzini@redhat.com \
--cc=qemu-devel@nongnu.org \
--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.