Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1380101

[PATCH v3 5/6] perf record: Re-synthesize tracking events after output switching

From Wang Nan <wangnan0@huawei.com>
Newsgroups linux.kernel
Subject [PATCH v3 5/6] perf record: Re-synthesize tracking events after output switching
Date 2016-04-15 20:30 +0200
Message-ID <rogFc-7ma-39@gated-at.bofh.it> (permalink)
References <rogFb-7ma-13@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


Tracking events describe kernel and threads. They are generated by
reading /proc/kallsyms, /proc/*/maps and /proc/*/task/* during
initialization of 'perf record', serialized into event sequences and put
at the head of 'perf.data'. In case of output switching, each output
file should contain those events.

This patch calls record__synthesize() during output switching, so the
event sequences described above can be collected again.

Signed-off-by: Wang Nan <wangnan0@huawei.com>
Tested-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: He Kuang <hekuang@huawei.com>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Masami Hiramatsu <mhiramat@kernel.org>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Zefan Li <lizefan@huawei.com>
Cc: pi3orama@163.com
Link: http://lkml.kernel.org/r/1460643725-167413-6-git-send-email-wangnan0@huawei.com
Signed-off-by: He Kuang <hekuang@huawei.com>
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
 tools/perf/builtin-record.c | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/tools/perf/builtin-record.c b/tools/perf/builtin-record.c
index 53bb02a..0772544 100644
--- a/tools/perf/builtin-record.c
+++ b/tools/perf/builtin-record.c
@@ -500,6 +500,8 @@ record__finish_output(struct record *rec)
 	return;
 }
 
+static int record__synthesize(struct record *rec);
+
 static int
 record__switch_output(struct record *rec, bool at_exit)
 {
@@ -528,6 +530,11 @@ record__switch_output(struct record *rec, bool at_exit)
 	if (!quiet)
 		fprintf(stderr, "[ perf record: Dump %s.%s ]\n",
 			file->path, timestamp);
+
+	/* Output tracking events */
+	if (!at_exit)
+		record__synthesize(rec);
+
 	return fd;
 }
 
-- 
1.8.3.4

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH v3 0/6] perf tools: Use SIGUSR2 control data dumpping Wang Nan <wangnan0@huawei.com> - 2016-04-15 20:30 +0200
  [PATCH v3 1/6] perf tools: Derive trigger class from auxtrace_snapshot Wang Nan <wangnan0@huawei.com> - 2016-04-15 20:30 +0200
    Re: [PATCH v3 1/6] perf tools: Derive trigger class from  auxtrace_snapshot Jiri Olsa <jolsa@redhat.com> - 2016-04-17 14:00 +0200
      Re: [PATCH v3 1/6] perf tools: Derive trigger class from  auxtrace_snapshot "Wangnan (F)" <wangnan0@huawei.com> - 2016-04-18 04:40 +0200
    Re: [PATCH v3 1/6] perf tools: Derive trigger class from  auxtrace_snapshot Jiri Olsa <jolsa@redhat.com> - 2016-04-17 14:00 +0200
  [PATCH v3 5/6] perf record: Re-synthesize tracking events after output switching Wang Nan <wangnan0@huawei.com> - 2016-04-15 20:30 +0200
  [PATCH v3 3/6] perf record: Force enable --timestamp-filename when --switch-output is provided Wang Nan <wangnan0@huawei.com> - 2016-04-15 20:30 +0200

csiph-web