Re: [PATCH v3 3/9] perf script: Add more filter to find_scripts()

From: Namhyung Kim
Date: Thu Sep 27 2012 - 06:48:22 EST


On Thu, 27 Sep 2012 13:45:30 +0900, Namhyung Kim wrote:
> It'd not that hard. How about using below (untested) patch?

Hmm... it won't work for some cases. Please ignore this.

Thanks,
Namhyung

>
> diff --git a/tools/perf/util/parse-events.c b/tools/perf/util/parse-events.c
> index bf5d033ee1b4..5dc71f598028 100644
> --- a/tools/perf/util/parse-events.c
> +++ b/tools/perf/util/parse-events.c
> @@ -817,6 +817,21 @@ int parse_events_terms(struct list_head *terms, const char *str)
> return ret;
> }
>
> +int __parse_events(struct list_head *evsel_list, const char *str)
> +{
> + int ret;
> + struct parse_events_data__events data = {
> + .list = LIST_HEAD_INIT(data.list),
> + };
> +
> + ret = parse_events__scanner(str, &data, PE_START_EVENTS);
> + if (!ret) {
> + list_splice(evsel_list, &data.list);
> + return 0;
> + }
> + return -1;
> +}
> +
> int parse_events(struct perf_evlist *evlist, const char *str,
> int unset __maybe_unused)
> {
> diff --git a/tools/perf/util/parse-events.h b/tools/perf/util/parse-events.h
> index c356e443448d..c13e9bd0f041 100644
> --- a/tools/perf/util/parse-events.h
> +++ b/tools/perf/util/parse-events.h
> @@ -32,6 +32,7 @@ extern int parse_events_option(const struct option *opt, const char *str,
> extern int parse_events(struct perf_evlist *evlist, const char *str,
> int unset);
> extern int parse_events_terms(struct list_head *terms, const char *str);
> +extern int __parse_events(struct list_head *evsel_list, const char *str);
> extern int parse_filter(const struct option *opt, const char *str, int unset);
>
> #define EVENTS_HELP_MAX (128*1024)
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/