On Wed,  3 Aug 2016 14:28:44 +0530
Ravi Bangoria <ravi.bango...@linux.vnet.ibm.com> wrote:

> Introduce helper function instead of inline code and replace hardcoded
> strings "$vars" and "$params" with their corresponding macros.
> 
> perf_probe_with_var is not declared as static since it will be called
> from different file in subsequent patch.
> 

Looks good to me :)

> Signed-off-by: Ravi Bangoria <ravi.bango...@linux.vnet.ibm.com>

Acked-by: Masami Hiramatsu <mhira...@kernel.org>

Thanks!

> ---
>  tools/perf/util/probe-event.c | 22 +++++++++++++++-------
>  tools/perf/util/probe-event.h |  2 ++
>  2 files changed, 17 insertions(+), 7 deletions(-)
> 
> diff --git a/tools/perf/util/probe-event.c b/tools/perf/util/probe-event.c
> index 953dc1a..bc9317e 100644
> --- a/tools/perf/util/probe-event.c
> +++ b/tools/perf/util/probe-event.c
> @@ -1592,19 +1592,27 @@ out:
>       return ret;
>  }
>  
> +/* Returns true if *any* ARG is either C variable, $params or $vars. */
> +bool perf_probe_with_var(struct perf_probe_event *pev)
> +{
> +     int i = 0;
> +
> +     for (i = 0; i < pev->nargs; i++)
> +             if (is_c_varname(pev->args[i].var)              ||
> +                 !strcmp(pev->args[i].var, PROBE_ARG_PARAMS) ||
> +                 !strcmp(pev->args[i].var, PROBE_ARG_VARS))
> +                     return true;
> +     return false;
> +}
> +
>  /* Return true if this perf_probe_event requires debuginfo */
>  bool perf_probe_event_need_dwarf(struct perf_probe_event *pev)
>  {
> -     int i;
> -
>       if (pev->point.file || pev->point.line || pev->point.lazy_line)
>               return true;
>  
> -     for (i = 0; i < pev->nargs; i++)
> -             if (is_c_varname(pev->args[i].var) ||
> -                 !strcmp(pev->args[i].var, "$params") ||
> -                 !strcmp(pev->args[i].var, "$vars"))
> -                     return true;
> +     if (perf_probe_with_var(pev))
> +             return true;
>  
>       return false;
>  }
> diff --git a/tools/perf/util/probe-event.h b/tools/perf/util/probe-event.h
> index e18ea9f..4d1139b 100644
> --- a/tools/perf/util/probe-event.h
> +++ b/tools/perf/util/probe-event.h
> @@ -128,6 +128,8 @@ char *synthesize_perf_probe_point(struct perf_probe_point 
> *pp);
>  int perf_probe_event__copy(struct perf_probe_event *dst,
>                          struct perf_probe_event *src);
>  
> +bool perf_probe_with_var(struct perf_probe_event *pev);
> +
>  /* Check the perf_probe_event needs debuginfo */
>  bool perf_probe_event_need_dwarf(struct perf_probe_event *pev);
>  
> -- 
> 2.5.5
> 


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

Reply via email to