On Fri, 24 Feb 2017 13:13:24 +0530
Ravi Bangoria <ravi.bango...@linux.vnet.ibm.com> wrote:

> No Functionality changes.

Please describe even it seems not have much info.
----
Factor out the SDT event name checking routine as is_sdt_event().
----

BTW, would we really need to move it in util.c? I think parse-event.{c,h}
is a better place.

Thank you,

> 
> Signed-off-by: Ravi Bangoria <ravi.bango...@linux.vnet.ibm.com>
> ---
>  tools/perf/util/probe-event.c |  9 +--------
>  tools/perf/util/util.c        | 12 ++++++++++++
>  tools/perf/util/util.h        |  2 ++
>  3 files changed, 15 insertions(+), 8 deletions(-)
> 
> diff --git a/tools/perf/util/probe-event.c b/tools/perf/util/probe-event.c
> index 28fb62c..2b1409f 100644
> --- a/tools/perf/util/probe-event.c
> +++ b/tools/perf/util/probe-event.c
> @@ -1339,14 +1339,7 @@ static int parse_perf_probe_point(char *arg, struct 
> perf_probe_event *pev)
>       if (!arg)
>               return -EINVAL;
>  
> -     /*
> -      * If the probe point starts with '%',
> -      * or starts with "sdt_" and has a ':' but no '=',
> -      * then it should be a SDT/cached probe point.
> -      */
> -     if (arg[0] == '%' ||
> -         (!strncmp(arg, "sdt_", 4) &&
> -          !!strchr(arg, ':') && !strchr(arg, '='))) {
> +     if (is_sdt_event(arg)) {
>               pev->sdt = true;
>               if (arg[0] == '%')
>                       arg++;
> diff --git a/tools/perf/util/util.c b/tools/perf/util/util.c
> index d8b45ce..b827428 100644
> --- a/tools/perf/util/util.c
> +++ b/tools/perf/util/util.c
> @@ -802,3 +802,15 @@ int unit_number__scnprintf(char *buf, size_t size, u64 n)
>  
>       return scnprintf(buf, size, "%" PRIu64 "%c", n, unit[i]);
>  }
> +
> +/*
> + * If the probe point starts with '%',
> + * or starts with "sdt_" and has a ':' but no '=',
> + * then it should be a SDT/cached probe point.
> + */
> +bool is_sdt_event(char *str)
> +{
> +     return (str[0] == '%' ||
> +             (!strncmp(str, "sdt_", 4) &&
> +              !!strchr(str, ':') && !strchr(str, '=')));
> +}
> diff --git a/tools/perf/util/util.h b/tools/perf/util/util.h
> index c74708d..ee599dc 100644
> --- a/tools/perf/util/util.h
> +++ b/tools/perf/util/util.h
> @@ -364,4 +364,6 @@ int is_printable_array(char *p, unsigned int len);
>  int timestamp__scnprintf_usec(u64 timestamp, char *buf, size_t sz);
>  
>  int unit_number__scnprintf(char *buf, size_t size, u64 n);
> +
> +bool is_sdt_event(char *str);
>  #endif /* GIT_COMPAT_UTIL_H */
> -- 
> 2.9.3
> 


-- 
Masami Hiramatsu <mhira...@kernel.org>

Reply via email to