Re: [tip:perf/urgent] perf evlist: Open event on evsel cpus and threads

From: Adrian Hunter
Date: Fri Sep 04 2015 - 03:12:35 EST


On 04/09/15 10:05, Jiri Olsa wrote:
> On Thu, Sep 03, 2015 at 05:41:06PM -0300, Arnaldo Carvalho de Melo wrote:
>> Em Thu, Sep 03, 2015 at 08:19:39PM +0200, Jiri Olsa escreveu:
>>> On Thu, Sep 03, 2015 at 01:41:09PM -0300, Arnaldo Carvalho de Melo wrote:
>>>> Em Thu, Sep 03, 2015 at 07:23:43PM +0300, Adrian Hunter escreveu:
>>>>> On 3/09/2015 6:27 p.m., Arnaldo Carvalho de Melo wrote:
>>>>>> Em Thu, Sep 03, 2015 at 04:34:24PM +0300, Adrian Hunter escreveu:
>>>>>>> On 01/09/15 11:31, tip-bot for Kan Liang wrote:
>>>>>> Something we could catch in a 'test' entry? Even if that required Intel
>>>>>> PT hardware that would be something important to have, all this stuff is
>>>>>> growing in complexity, we need those tests...
>>
>>>>> There is "Test tracking with sched_switch" but you need to expose it
>>>>> to the same issue i.e.
>>
>>>> Sure, Kan and Jiri were talking about the need to go doing these
>>>> changes, Jiri? Kan?
>>
>>> perf_evlist__propagate_maps is called from perf_evlist__create_maps,
>>> so if evsel is added later it will not be affected, perhaps we need
>>> something like below:
>>
>>> +++ b/tools/perf/util/evlist.c
>>> @@ -133,6 +133,9 @@ void perf_evlist__add(struct perf_evlist *evlist, struct perf_evsel *entry)
>>>
>>> if (!evlist->nr_entries++)
>>> perf_evlist__set_id_pos(evlist);
>>> +
>>> + entry->cpus = cpu_map__get(evlist->cpus);
>>> + entry->threads = thread_map__get(evlist->threads);
>>
>> You can't simply do that, we need to do it only if those fields are not
>> already set.
>
> argh, right.. forgot about cpus setup.. anyway, Adrian already wanted
> to do single function for this and the propagate function

yeah, I started working on it this morning.

--
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/