On Sun, Sep 18, 2016 at 11:18:18AM -0700, Andi Kleen wrote:
> From: Andi Kleen <a...@linux.intel.com>
> 
> Print aliases like 'cycles' with perf list --raw-dump, so that
> they can be completed by perf-completion.sh
> 
> Signed-off-by: Andi Kleen <a...@linux.intel.com>
> ---
>  tools/perf/util/parse-events.c | 10 +++++++++-
>  1 file changed, 9 insertions(+), 1 deletion(-)
> 
> diff --git a/tools/perf/util/parse-events.c b/tools/perf/util/parse-events.c
> index 94846271cb1c..9716c2bc6869 100644
> --- a/tools/perf/util/parse-events.c
> +++ b/tools/perf/util/parse-events.c
> @@ -2191,13 +2191,21 @@ restart:
>  
>               if (!evt_num_known) {
>                       evt_num++;
> +                     if (strlen(syms->alias))
> +                             evt_num++;
>                       continue;
>               }
>  
>               if (!name_only && strlen(syms->alias))
>                       snprintf(name, MAX_NAME_LEN, "%s OR %s", syms->symbol, 
> syms->alias);
> -             else
> +             else {
> +                     if (strlen(syms->alias)) {
> +                             evt_list[evt_i++] = strdup(syms->alias);

why don't you copy syms->alias into name and let the code below do the queue?

thanks,
jirka

> +                             if (evt_list[evt_i - 1]  == NULL)
> +                                     goto out_enomem;
> +                     }
>                       strncpy(name, syms->symbol, MAX_NAME_LEN);
> +             }
>  
>               evt_list[evt_i] = strdup(name);
>               if (evt_list[evt_i] == NULL)
> -- 
> 2.5.5
> 

Reply via email to