From 7609ffb9191e3fc473203f4bd58b934161eab358 Mon Sep 17 00:00:00 2001 From: Stefan Hajnoczi Date: Mon, 27 Mar 2017 14:17:18 +0100 Subject: [PATCH] trace: fix tcg tracing build breakage Commit 0ab8ed18a6fe98bfc82705b0f041fbf2a8ca5b60 ("trace: switch to modular code generation for sub-directories") forgot to convert "tcg" trace events to the modular code generation approach where each sub-directory has its own trace-events file. This patch fixes compilation for "tcg" trace events. Currently they are only used in the root ./trace-events file. "tcg" trace events can only be used in the root ./trace-events file for the time being. Reported-by: Peter Maydell Tested-by: Emilio G. Cota Signed-off-by: Stefan Hajnoczi Message-id: 20170327131718.18268-1-stefanha@redhat.com Suggested-by: Emilio G. Cota Signed-off-by: Stefan Hajnoczi --- docs/tracing.txt | 3 +++ scripts/tracetool/format/tcg_h.py | 1 + scripts/tracetool/format/tcg_helper_c.py | 1 + trace/Makefile.objs | 16 ++++++++-------- 4 files changed, 13 insertions(+), 8 deletions(-) diff --git a/docs/tracing.txt b/docs/tracing.txt index e14bb6dccc..8c0029beca 100644 --- a/docs/tracing.txt +++ b/docs/tracing.txt @@ -405,6 +405,9 @@ information. If used together with the "tcg" property, it adds a second "TCGv_env" argument that must point to the per-target global TCG register that points to the vCPU when guest code is executed (usually the "cpu_env" variable). +The "tcg" and "vcpu" properties are currently only honored in the root +./trace-events file. + The following example events: foo(uint32_t a) "a=%x" diff --git a/scripts/tracetool/format/tcg_h.py b/scripts/tracetool/format/tcg_h.py index 7ddc4a52ce..db55f52eb5 100644 --- a/scripts/tracetool/format/tcg_h.py +++ b/scripts/tracetool/format/tcg_h.py @@ -40,6 +40,7 @@ def generate(events, backend, group): '#define TRACE_%s_GENERATED_TCG_TRACERS_H' % group.upper(), '', '#include "exec/helper-proto.h"', + '#include "%s"' % header, '', ) diff --git a/scripts/tracetool/format/tcg_helper_c.py b/scripts/tracetool/format/tcg_helper_c.py index 7dccd8c5ec..ec7acbe347 100644 --- a/scripts/tracetool/format/tcg_helper_c.py +++ b/scripts/tracetool/format/tcg_helper_c.py @@ -55,6 +55,7 @@ def generate(events, backend, group): '#include "qemu-common.h"', '#include "cpu.h"', '#include "exec/helper-proto.h"', + '#include "%s"' % header, '', ) diff --git a/trace/Makefile.objs b/trace/Makefile.objs index 1b8eb4a616..afd571c3ec 100644 --- a/trace/Makefile.objs +++ b/trace/Makefile.objs @@ -9,27 +9,27 @@ $(BUILD_DIR)/trace-events-all: $(trace-events-files) $(obj)/generated-helpers-wrappers.h: $(obj)/generated-helpers-wrappers.h-timestamp @cmp $< $@ >/dev/null 2>&1 || cp $< $@ -$(obj)/generated-helpers-wrappers.h-timestamp: $(trace-events-files) $(BUILD_DIR)/config-host.mak $(tracetool-y) +$(obj)/generated-helpers-wrappers.h-timestamp: $(SRC_PATH)/trace-events $(BUILD_DIR)/config-host.mak $(tracetool-y) $(call quiet-command,$(TRACETOOL) \ - --group=all \ + --group=root \ --format=tcg-helper-wrapper-h \ --backend=$(TRACE_BACKENDS) \ $< > $@,"GEN","$(patsubst %-timestamp,%,$@)") $(obj)/generated-helpers.h: $(obj)/generated-helpers.h-timestamp @cmp $< $@ >/dev/null 2>&1 || cp $< $@ -$(obj)/generated-helpers.h-timestamp: $(trace-events-files) $(BUILD_DIR)/config-host.mak $(tracetool-y) +$(obj)/generated-helpers.h-timestamp: $(SRC_PATH)/trace-events $(BUILD_DIR)/config-host.mak $(tracetool-y) $(call quiet-command,$(TRACETOOL) \ - --group=all \ + --group=root \ --format=tcg-helper-h \ --backend=$(TRACE_BACKENDS) \ $< > $@,"GEN","$(patsubst %-timestamp,%,$@)") $(obj)/generated-helpers.c: $(obj)/generated-helpers.c-timestamp @cmp $< $@ >/dev/null 2>&1 || cp $< $@ -$(obj)/generated-helpers.c-timestamp: $(trace-events-files) $(BUILD_DIR)/config-host.mak $(tracetool-y) +$(obj)/generated-helpers.c-timestamp: $(SRC_PATH)/trace-events $(BUILD_DIR)/config-host.mak $(tracetool-y) $(call quiet-command,$(TRACETOOL) \ - --group=all \ + --group=root \ --format=tcg-helper-c \ --backend=$(TRACE_BACKENDS) \ $< > $@,"GEN","$(patsubst %-timestamp,%,$@)") @@ -41,9 +41,9 @@ target-obj-y += generated-helpers.o $(obj)/generated-tcg-tracers.h: $(obj)/generated-tcg-tracers.h-timestamp @cmp $< $@ >/dev/null 2>&1 || cp $< $@ -$(obj)/generated-tcg-tracers.h-timestamp: $(trace-events-files) $(BUILD_DIR)/config-host.mak $(tracetool-y) +$(obj)/generated-tcg-tracers.h-timestamp: $(SRC_PATH)/trace-events $(BUILD_DIR)/config-host.mak $(tracetool-y) $(call quiet-command,$(TRACETOOL) \ - --group=all \ + --group=root \ --format=tcg-h \ --backend=$(TRACE_BACKENDS) \ $< > $@,"GEN","$(patsubst %-timestamp,%,$@)")