On Mon, Sep 10, 2012 at 03:53:51PM +0800, Yan, Zheng wrote:
> From: "Yan, Zheng" <[email protected]>
>
SNIP
> +int parse_events_add_pmu(struct list_head **_list, int *idx,
> char *name, struct list_head *head_config)
> {
> struct perf_event_attr attr;
> - struct perf_pmu *pmu;
> + struct list_head *list;
> + struct perf_pmu *pmu = NULL;
> + struct perf_evsel *evsel, *first = NULL;
> + int orig_idx = *idx;
>
> - pmu = perf_pmu__find(name);
> - if (!pmu)
> - return -EINVAL;
> + list = malloc(sizeof(*list));
> + if (!list)
> + return -ENOMEM;
> + INIT_LIST_HEAD(list);
list should be allocated only if (!*_list)) same as in add_event function
I haven't test, but I think you'll leak/loose events if there's another pmu
event defined after ','
jirka
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/