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


Groups > linux.kernel > #1549605

[PATCH 4/7] perf record: Add struct switch_output

From Jiri Olsa <jolsa@kernel.org>
Newsgroups linux.kernel
Subject [PATCH 4/7] perf record: Add struct switch_output
Date 2017-01-03 09:30 +0100
Message-ID <sVsDM-3nL-25@gated-at.bofh.it> (permalink)
References <sVsDM-3nL-5@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


Next patches will add more --switch-output option arguments,
so preparing the data holder.

Signed-off-by: Jiri Olsa <jolsa@kernel.org>
Cc: David Ahern <dsahern@gmail.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Wang Nan <wangnan0@huawei.com>
Link: http://lkml.kernel.org/n/tip-tibmeq1qw3kgrfzrswt5xypx@git.kernel.org
---
 tools/perf/builtin-record.c | 16 ++++++++++------
 1 file changed, 10 insertions(+), 6 deletions(-)

diff --git a/tools/perf/builtin-record.c b/tools/perf/builtin-record.c
index 4ec10e9427d9..f7e805b30527 100644
--- a/tools/perf/builtin-record.c
+++ b/tools/perf/builtin-record.c
@@ -46,6 +46,10 @@
 #include <asm/bug.h>
 #include <linux/time64.h>
 
+struct switch_output {
+	bool		 signal;
+};
+
 struct record {
 	struct perf_tool	tool;
 	struct record_opts	opts;
@@ -62,7 +66,7 @@ struct record {
 	bool			no_buildid_cache_set;
 	bool			buildid_all;
 	bool			timestamp_filename;
-	bool			switch_output;
+	struct switch_output	switch_output;
 	unsigned long long	samples;
 };
 
@@ -842,11 +846,11 @@ static int __cmd_record(struct record *rec, int argc, const char **argv)
 	signal(SIGTERM, sig_handler);
 	signal(SIGSEGV, sigsegv_handler);
 
-	if (rec->opts.auxtrace_snapshot_mode || rec->switch_output) {
+	if (rec->opts.auxtrace_snapshot_mode || rec->switch_output.signal) {
 		signal(SIGUSR2, snapshot_sig_handler);
 		if (rec->opts.auxtrace_snapshot_mode)
 			trigger_on(&auxtrace_snapshot_trigger);
-		if (rec->switch_output)
+		if (rec->switch_output.signal)
 			trigger_on(&switch_output_trigger);
 	} else {
 		signal(SIGUSR2, SIG_IGN);
@@ -1519,7 +1523,7 @@ static struct option __record_options[] = {
 		    "Record build-id of all DSOs regardless of hits"),
 	OPT_BOOLEAN(0, "timestamp-filename", &record.timestamp_filename,
 		    "append timestamp to output filename"),
-	OPT_BOOLEAN(0, "switch-output", &record.switch_output,
+	OPT_BOOLEAN(0, "switch-output", &record.switch_output.signal,
 		    "Switch output when receive SIGUSR2"),
 	OPT_BOOLEAN(0, "dry-run", &dry_run,
 		    "Parse options then exit"),
@@ -1578,7 +1582,7 @@ int cmd_record(int argc, const char **argv, const char *prefix __maybe_unused)
 		return -EINVAL;
 	}
 
-	if (rec->switch_output)
+	if (rec->switch_output.signal)
 		rec->timestamp_filename = true;
 
 	if (!rec->itr) {
@@ -1629,7 +1633,7 @@ int cmd_record(int argc, const char **argv, const char *prefix __maybe_unused)
 
 	if (rec->no_buildid_cache || rec->no_buildid) {
 		disable_buildid_cache();
-	} else if (rec->switch_output) {
+	} else if (rec->switch_output.signal) {
 		/*
 		 * In 'perf record --switch-output', disable buildid
 		 * generation by default to reduce data file switching
-- 
2.7.4

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


Thread

[PATCH 0/7] perf tools: Add switch-output size and time threshold options Jiri Olsa <jolsa@kernel.org> - 2017-01-03 09:30 +0100
  [PATCH 1/7] tools lib subcmd: Add OPT_STRING_OPTARG_SET option Jiri Olsa <jolsa@kernel.org> - 2017-01-03 09:30 +0100
    [tip:perf/urgent] tools lib subcmd: Add OPT_STRING_OPTARG_SET  option tip-bot for Jiri Olsa <tipbot@zytor.com> - 2017-01-05 09:00 +0100
  [PATCH 4/7] perf record: Add struct switch_output Jiri Olsa <jolsa@kernel.org> - 2017-01-03 09:30 +0100
  [PATCH 5/7] perf record: Change switch-output option to take optional argument Jiri Olsa <jolsa@kernel.org> - 2017-01-03 09:30 +0100
  Re: [PATCH 0/7] perf tools: Add switch-output size and time threshold  options "Wangnan (F)" <wangnan0@huawei.com> - 2017-01-03 11:00 +0100
    Re: [PATCH 0/7] perf tools: Add switch-output size and time  threshold options Jiri Olsa <jolsa@redhat.com> - 2017-01-03 11:40 +0100
    Re: [PATCH 0/7] perf tools: Add switch-output size and time  threshold options Arnaldo Carvalho de Melo <acme@kernel.org> - 2017-01-10 14:40 +0100
      Re: [PATCH 0/7] perf tools: Add switch-output size and time  threshold options Jiri Olsa <jolsa@redhat.com> - 2017-01-10 19:50 +0100

csiph-web