public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Arnaldo Carvalho de Melo <acme@kernel.org>
To: Changbin Du <changbin.du@gmail.com>
Cc: Namhyung Kim <namhyung@kernel.org>, Jiri Olsa <jolsa@redhat.com>,
	Peter Zijlstra <peterz@infradead.org>,
	Ingo Molnar <mingo@redhat.com>,
	Steven Rostedt <rostedt@goodmis.org>,
	linux-kernel <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH v2 10/15] perf ftrace: add support for trace option sleep-time
Date: Tue, 7 Jul 2020 13:09:43 -0300	[thread overview]
Message-ID: <20200707160943.GA1556@kernel.org> (raw)
In-Reply-To: <20200707152539.ldhgqf6vmnttqnfn@mail.google.com>

Em Tue, Jul 07, 2020 at 11:35:14PM +0800, Changbin Du escreveu:
> On Fri, Jul 03, 2020 at 03:40:59PM +0900, Namhyung Kim wrote:
> > On Sat, Jun 27, 2020 at 10:38 PM Changbin Du <changbin.du@gmail.com> wrote:
> > > This adds an option '--graph-nosleep-time' which allow us only to measure
> > > on-CPU time. This option is function_graph tracer only.

> > I'd suggest --graph-sleep-time instead and set it by default.
> > Then we can have --no-graph-sleep-time as well.

> If so can we make --graph-sleep-time as default. Seems there is no something
> like OPT_BOOLEAN_DEFAULT().

> > By the way,  didn't we agree to have something like --graph-opts instead?

> As I mentioned in previous version, --graph-opts make the parsing a little
> complex.
> 	--graph-opts depth=<n>,nosleep_time,noirqs,no_tail,verbose

> While the exsiting style is '--graph-depth <n>'. The cons is we must type more
> characters. The pros is don't need to reimplement parsing and align with old
> behaviour.
> 	--graph-depth <n>
> 	--graph-nosleep-time
> 	--graph-noirqs
> 	--graph-notail
> 	--graph-verbose

This achieves the same result, yes, but it is more cumbersome, to use
all we would have to do:

    perf ftrace --graph-depth 10 --graph-nosleep-time --graph-noirqs --graph-notail --graph-verbose ...

When we could have a more compact:

    perf ftrace --graph-opts depth=10,nosleep-time,noirqs,notail,verbose ...

I.e., instead of a series of:

        OPT_INTEGER(0, "graph-depth", &ftrace.graph_depth, "Max depth for function graph tracer"),
	OPT_BOOLEAN(0, "sleep-time", &ftrace.sleep_time, "explanation"),
	OPT_BOOLEAN(0, "irqs" &ftrace.irqs, "explanation"),
	OPT_BOOLEAN(0, "tail" &ftrace.tail, "explanation"),
	OPT_BOOLEAN(0, "verbose" &ftrace.verbose, "explanation"),

We'd have a:

	OPT_CALLBACK(0, "graph-opts", &ftrace, "options", "graph options", parse_graph_opts),

And parse_graph_opts() would just have a simple strchr(opt, ',') + if
strcmp()/else loop, i.e., it would be easier for users, slightly more
difficult for perf developers :-)

- Arnaldo

  reply	other threads:[~2020-07-07 16:09 UTC|newest]

Thread overview: 35+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-06-27 13:36 [PATCH v2 00/15] perf: ftrace enhancement Changbin Du
2020-06-27 13:36 ` [PATCH v2 01/15] perf ftrace: select function/function_graph tracer automatically Changbin Du
2020-07-03  5:47   ` Namhyung Kim
2020-07-07 15:00     ` Changbin Du
2020-06-27 13:36 ` [PATCH v2 02/15] perf ftrace: add option '-F/--funcs' to list available functions Changbin Du
2020-07-03  5:58   ` Namhyung Kim
2020-07-07 15:15     ` Changbin Du
2020-06-27 13:36 ` [PATCH v2 03/15] perf ftrace: add option -t/--tid to filter by thread id Changbin Du
2020-06-27 13:36 ` [PATCH v2 04/15] perf ftrace: add option -d/--delay to delay tracing Changbin Du
2020-06-27 13:36 ` [PATCH v2 05/15] perf ftrace: factor out function write_tracing_file_int() Changbin Du
2020-07-07 16:09   ` Steven Rostedt
2020-07-07 16:10     ` Steven Rostedt
2020-07-08 12:53     ` Changbin Du
2020-07-07 16:24   ` Arnaldo Carvalho de Melo
2020-06-27 13:36 ` [PATCH v2 06/15] perf ftrace: add option '-m/--buffer-size' to set per-cpu buffer size Changbin Du
2020-07-03  6:17   ` Namhyung Kim
2020-06-27 13:36 ` [PATCH v2 07/15] perf ftrace: show trace column header Changbin Du
2020-07-03  6:20   ` Namhyung Kim
2020-07-03 12:35     ` Arnaldo Carvalho de Melo
2020-07-07 14:06     ` Changbin Du
2020-06-27 13:36 ` [PATCH v2 08/15] perf ftrace: add option '--inherit' to trace children processes Changbin Du
2020-06-27 13:36 ` [PATCH v2 09/15] perf ftrace: add support for tracing option 'func_stack_trace' Changbin Du
2020-07-03  6:30   ` Namhyung Kim
2020-07-07 15:19     ` Changbin Du
2020-06-27 13:36 ` [PATCH v2 10/15] perf ftrace: add support for trace option sleep-time Changbin Du
2020-07-03  6:40   ` Namhyung Kim
2020-07-07 15:35     ` Changbin Du
2020-07-07 16:09       ` Arnaldo Carvalho de Melo [this message]
2020-07-08 12:59         ` Changbin Du
2020-06-27 13:36 ` [PATCH v2 11/15] perf ftrace: add support for trace option funcgraph-irqs Changbin Du
2020-07-03  6:43   ` Namhyung Kim
2020-06-27 13:36 ` [PATCH v2 12/15] perf ftrace: add support for tracing option 'irq-info' Changbin Du
2020-06-27 13:36 ` [PATCH v2 13/15] perf ftrace: add option '--graph-verbose' to show more info for graph tracer Changbin Du
2020-06-27 13:36 ` [PATCH v2 14/15] perf ftrace: add support for trace option tracing_thresh Changbin Du
2020-06-27 13:36 ` [PATCH v2 15/15] perf ftrace: add change log Changbin Du

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=20200707160943.GA1556@kernel.org \
    --to=acme@kernel.org \
    --cc=changbin.du@gmail.com \
    --cc=jolsa@redhat.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@redhat.com \
    --cc=namhyung@kernel.org \
    --cc=peterz@infradead.org \
    --cc=rostedt@goodmis.org \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox