lkml.org 
[lkml]   [2023]   [Mar]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH] perf ftrace: Make system wide the default target for latency subcommand
From
Date
Hello,

On 2023/3/25 9:39, Namhyung Kim wrote:
> Hello,
>
> On Thu, Mar 23, 2023 at 8:29 PM Yang Jihong <yangjihong1@huawei.com> wrote:
>>
>> If no target is specified for 'latency' subcommand, the execution fails
>> because - 1 (invalid value) is written to set_ftrace_pid tracefs file.
>> Make system wide the default target, which is the same as the default
>> behavior of 'trace' subcommand.
>
> I followed the convention to use -a for system-wide profiling.
> Not sure if it's ok to make it default, but I don't object. :)
>
Thanks for the reply.

Yes, "perf ftrace latency" supports -a for system wide profiles.
Because "perf ftrace trace" defaults to system wide when no target is
specified. Therefore, I sent the patch to check whether "latency" is
consistent with the behavior of the "trace". :)

Thanks,
Yang.

> Thanks,
> Namhyung
>
>>
>> Before the fix:
>>
>> # perf ftrace latency -T schedule
>> failed to set ftrace pid
>>
>> After the fix:
>>
>> # perf ftrace latency -T schedule
>> ^C# DURATION | COUNT | GRAPH |
>> 0 - 1 us | 0 | |
>> 1 - 2 us | 0 | |
>> 2 - 4 us | 0 | |
>> 4 - 8 us | 2828 | #### |
>> 8 - 16 us | 23953 | ######################################## |
>> 16 - 32 us | 408 | |
>> 32 - 64 us | 318 | |
>> 64 - 128 us | 4 | |
>> 128 - 256 us | 3 | |
>> 256 - 512 us | 0 | |
>> 512 - 1024 us | 1 | |
>> 1 - 2 ms | 4 | |
>> 2 - 4 ms | 0 | |
>> 4 - 8 ms | 0 | |
>> 8 - 16 ms | 0 | |
>> 16 - 32 ms | 0 | |
>> 32 - 64 ms | 0 | |
>> 64 - 128 ms | 0 | |
>> 128 - 256 ms | 4 | |
>> 256 - 512 ms | 2 | |
>> 512 - 1024 ms | 0 | |
>> 1 - ... s | 0 | |
>>
>> Fixes: 53be50282269 ("perf ftrace: Add 'latency' subcommand")
>> Signed-off-by: Yang Jihong <yangjihong1@huawei.com>
>> ---
>> tools/perf/builtin-ftrace.c | 6 ++++--
>> 1 file changed, 4 insertions(+), 2 deletions(-)
>>
>> diff --git a/tools/perf/builtin-ftrace.c b/tools/perf/builtin-ftrace.c
>> index d7fe00f66b83..fb1b66ef2e16 100644
>> --- a/tools/perf/builtin-ftrace.c
>> +++ b/tools/perf/builtin-ftrace.c
>> @@ -1228,10 +1228,12 @@ int cmd_ftrace(int argc, const char **argv)
>> goto out_delete_filters;
>> }
>>
>> + /* Make system wide (-a) the default target. */
>> + if (!argc && target__none(&ftrace.target))
>> + ftrace.target.system_wide = true;
>> +
>> switch (subcmd) {
>> case PERF_FTRACE_TRACE:
>> - if (!argc && target__none(&ftrace.target))
>> - ftrace.target.system_wide = true;
>> cmd_func = __cmd_ftrace;
>> break;
>> case PERF_FTRACE_LATENCY:
>> --
>> 2.30.GIT
>>
> .
>

\
 
 \ /
  Last update: 2023-03-27 01:17    [W:0.057 / U:2.096 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site