On Tue, May 14, 2013 at 07:13:46PM +0900, Namhyung Kim wrote:
> From: Namhyung Kim <namhyung....@lge.com>

SNIP

>  };
>  
>  extern struct tracepoint_path *tracepoint_id_to_path(u64 config);
> +extern struct tracepoint_path *tracepoint_name_to_path(const char *name);
>  extern bool have_tracepoints(struct list_head *evlist);
>  
>  const char *event_type(int type);
> diff --git a/tools/perf/util/trace-event-info.c 
> b/tools/perf/util/trace-event-info.c
> index ab18bf12d54a..bfcaeac7ef9d 100644
> --- a/tools/perf/util/trace-event-info.c
> +++ b/tools/perf/util/trace-event-info.c
> @@ -414,12 +414,23 @@ get_tracepoints_path(struct list_head *pattrs)
>               if (pos->attr.type != PERF_TYPE_TRACEPOINT)
>                       continue;
>               ++nr_tracepoints;
> +
> +             if (pos->name) {
> +                     ppath->next = tracepoint_name_to_path(pos->name);

yep, looks like big time saver ;)

> +                     if (!ppath->next)
> +                             goto error;

hum, the tracepoint_name_to_path fails also because of the
malformed tracepoint name.. then the error message is
misleading.. but not quite sure this could happen

jirka

> +
> +                     goto next;
> +             }
> +
>               ppath->next = tracepoint_id_to_path(pos->attr.config);
>               if (!ppath->next) {
> +error:
>                       pr_debug("No memory to alloc tracepoints list\n");
>                       put_tracepoints_path(&path);
>                       return NULL;
>               }
> +next:
>               ppath = ppath->next;
>       }
>  
> -- 
> 1.7.11.7
> 
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to