All of lore.kernel.org
 help / color / mirror / Atom feed
From: Namhyung Kim <namhyung@kernel.org>
To: Ian Rogers <irogers@google.com>
Cc: Peter Zijlstra <peterz@infradead.org>,
	Ingo Molnar <mingo@redhat.com>,
	Arnaldo Carvalho de Melo <acme@kernel.org>,
	Alexander Shishkin <alexander.shishkin@linux.intel.com>,
	Jiri Olsa <jolsa@kernel.org>,
	Adrian Hunter <adrian.hunter@intel.com>,
	James Clark <james.clark@linaro.org>,
	Collin Funk <collin.funk1@gmail.com>,
	Dmitry Vyukov <dvyukov@google.com>,
	Andi Kleen <ak@linux.intel.com>,
	Thomas Falcon <thomas.falcon@intel.com>,
	Leo Yan <leo.yan@arm.com>, Yicong Yang <yangyicong@hisilicon.com>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	"Masami Hiramatsu (Google)" <mhiramat@kernel.org>,
	Stephen Brennan <stephen.s.brennan@oracle.com>,
	Haibo Xu <haibo1.xu@intel.com>,
	linux-kernel@vger.kernel.org, linux-perf-users@vger.kernel.org
Subject: Re: [PATCH v1 02/17] perf timechart: Add record support for output perf.data path
Date: Tue, 25 Nov 2025 22:38:48 -0800	[thread overview]
Message-ID: <aSageLlTEnj8SRfF@google.com> (raw)
In-Reply-To: <20251122081929.7588-3-irogers@google.com>

On Sat, Nov 22, 2025 at 12:19:14AM -0800, Ian Rogers wrote:
> The '-o' option exists for the SVG creation but not for `perf
> timechart record`. Add to better allow testing.

Can you please update the documentation as well?

Thanks,
Namhyung

> 
> Signed-off-by: Ian Rogers <irogers@google.com>
> ---
>  tools/perf/builtin-timechart.c | 15 +++++++++------
>  1 file changed, 9 insertions(+), 6 deletions(-)
> 
> diff --git a/tools/perf/builtin-timechart.c b/tools/perf/builtin-timechart.c
> index 22050c640dfa..f8b49d69e9a5 100644
> --- a/tools/perf/builtin-timechart.c
> +++ b/tools/perf/builtin-timechart.c
> @@ -1651,7 +1651,7 @@ static int __cmd_timechart(struct timechart *tchart, const char *output_name)
>  	return ret;
>  }
>  
> -static int timechart__io_record(int argc, const char **argv)
> +static int timechart__io_record(int argc, const char **argv, const char *output_data)
>  {
>  	unsigned int rec_argc, i;
>  	const char **rec_argv;
> @@ -1659,7 +1659,7 @@ static int timechart__io_record(int argc, const char **argv)
>  	char *filter = NULL;
>  
>  	const char * const common_args[] = {
> -		"record", "-a", "-R", "-c", "1",
> +		"record", "-a", "-R", "-c", "1", "-o", output_data,
>  	};
>  	unsigned int common_args_nr = ARRAY_SIZE(common_args);
>  
> @@ -1786,7 +1786,8 @@ static int timechart__io_record(int argc, const char **argv)
>  }
>  
>  
> -static int timechart__record(struct timechart *tchart, int argc, const char **argv)
> +static int timechart__record(struct timechart *tchart, int argc, const char **argv,
> +			     const char *output_data)
>  {
>  	unsigned int rec_argc, i, j;
>  	const char **rec_argv;
> @@ -1794,7 +1795,7 @@ static int timechart__record(struct timechart *tchart, int argc, const char **ar
>  	unsigned int record_elems;
>  
>  	const char * const common_args[] = {
> -		"record", "-a", "-R", "-c", "1",
> +		"record", "-a", "-R", "-c", "1", "-o", output_data,
>  	};
>  	unsigned int common_args_nr = ARRAY_SIZE(common_args);
>  
> @@ -1934,6 +1935,7 @@ int cmd_timechart(int argc, const char **argv)
>  		.merge_dist = 1000,
>  	};
>  	const char *output_name = "output.svg";
> +	const char *output_record_data = "perf.data";
>  	const struct option timechart_common_options[] = {
>  	OPT_BOOLEAN('P', "power-only", &tchart.power_only, "output power data only"),
>  	OPT_BOOLEAN('T', "tasks-only", &tchart.tasks_only, "output processes data only"),
> @@ -1976,6 +1978,7 @@ int cmd_timechart(int argc, const char **argv)
>  	OPT_BOOLEAN('I', "io-only", &tchart.io_only,
>  		    "record only IO data"),
>  	OPT_BOOLEAN('g', "callchain", &tchart.with_backtrace, "record callchain"),
> +	OPT_STRING('o', "output", &output_record_data, "file", "output data file name"),
>  	OPT_PARENT(timechart_common_options),
>  	};
>  	const char * const timechart_record_usage[] = {
> @@ -2024,9 +2027,9 @@ int cmd_timechart(int argc, const char **argv)
>  		}
>  
>  		if (tchart.io_only)
> -			ret = timechart__io_record(argc, argv);
> +			ret = timechart__io_record(argc, argv, output_record_data);
>  		else
> -			ret = timechart__record(&tchart, argc, argv);
> +			ret = timechart__record(&tchart, argc, argv, output_record_data);
>  		goto out;
>  	} else if (argc)
>  		usage_with_options(timechart_usage, timechart_options);
> -- 
> 2.52.0.rc2.455.g230fcf2819-goog
> 

  reply	other threads:[~2025-11-26  6:38 UTC|newest]

Thread overview: 35+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-11-22  8:19 [PATCH v1 00/17] perf: Small fixes and new tests Ian Rogers
2025-11-22  8:19 ` [PATCH v1 01/17] perf kvm: Fix debug assertion Ian Rogers
2025-11-26  6:33   ` Namhyung Kim
2025-11-22  8:19 ` [PATCH v1 02/17] perf timechart: Add record support for output perf.data path Ian Rogers
2025-11-26  6:38   ` Namhyung Kim [this message]
2025-11-22  8:19 ` [PATCH v1 03/17] perf symbol-elf: Add missing puts on error path Ian Rogers
2025-12-01 18:04   ` Arnaldo Carvalho de Melo
2025-11-22  8:19 ` [PATCH v1 04/17] perf symbol: Add missed dso__put Ian Rogers
2025-11-22  8:19 ` [PATCH v1 05/17] perf probe-event: Ensure probe event nsinfo is always cleared Ian Rogers
2025-11-26  6:58   ` Namhyung Kim
2025-11-22  8:19 ` [PATCH v1 06/17] perf hist: In init, ensure mem_info is put on error paths Ian Rogers
2025-12-01 17:05   ` Arnaldo Carvalho de Melo
2025-12-01 17:14   ` Arnaldo Carvalho de Melo
2025-12-01 17:52     ` Ian Rogers
2025-11-22  8:19 ` [PATCH v1 07/17] perf mem-events: Don't leak online CPU map Ian Rogers
2025-12-01 17:01   ` Arnaldo Carvalho de Melo
2025-11-22  8:19 ` [PATCH v1 08/17] perf jitdump: Fix missed dso__put Ian Rogers
2025-12-01 17:00   ` Arnaldo Carvalho de Melo
2025-11-22  8:19 ` [PATCH v1 09/17] perf c2c: Clean up some defensive gets and make asan clean Ian Rogers
2025-12-01 17:45   ` Arnaldo Carvalho de Melo
2025-11-22  8:19 ` [PATCH v1 10/17] perf tests c2c: Add a basic c2c Ian Rogers
2025-11-22  8:19 ` [PATCH v1 11/17] perf tests buildid: Add purge and remove testing Ian Rogers
2025-11-22  8:19 ` [PATCH v1 12/17] perf tests top: Add basic perf top coverage test Ian Rogers
2025-11-22  8:19 ` [PATCH v1 13/17] perf tests timechart: Add a perf timechart test Ian Rogers
2025-11-22  8:19 ` [PATCH v1 14/17] perf tests kallsyms: Add basic kallsyms test Ian Rogers
2025-11-22  8:19 ` [PATCH v1 15/17] perf tests script dlfilter: Add a dlfilter test Ian Rogers
2025-11-22  8:19 ` [PATCH v1 16/17] perf tests evlist: Add basic evlist test Ian Rogers
2025-11-26  7:19   ` Namhyung Kim
2025-11-22  8:19 ` [PATCH v1 17/17] perf test kvm: Add some basic perf kvm test coverage Ian Rogers
2025-11-26  7:21   ` Namhyung Kim
2025-11-27 11:53     ` Ian Rogers
2025-11-27 20:55       ` Namhyung Kim
2025-11-28  9:06         ` Ian Rogers
2025-12-03 19:03           ` Namhyung Kim
2025-12-04 19:10 ` [PATCH v1 00/17] perf: Small fixes and new tests Namhyung Kim

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=aSageLlTEnj8SRfF@google.com \
    --to=namhyung@kernel.org \
    --cc=acme@kernel.org \
    --cc=adrian.hunter@intel.com \
    --cc=ak@linux.intel.com \
    --cc=alexander.shishkin@linux.intel.com \
    --cc=collin.funk1@gmail.com \
    --cc=dvyukov@google.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=haibo1.xu@intel.com \
    --cc=irogers@google.com \
    --cc=james.clark@linaro.org \
    --cc=jolsa@kernel.org \
    --cc=leo.yan@arm.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-perf-users@vger.kernel.org \
    --cc=mhiramat@kernel.org \
    --cc=mingo@redhat.com \
    --cc=peterz@infradead.org \
    --cc=stephen.s.brennan@oracle.com \
    --cc=thomas.falcon@intel.com \
    --cc=yangyicong@hisilicon.com \
    /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.