From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933371AbbGURZr (ORCPT ); Tue, 21 Jul 2015 13:25:47 -0400 Received: from mail.kernel.org ([198.145.29.136]:36817 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755042AbbGURZq (ORCPT ); Tue, 21 Jul 2015 13:25:46 -0400 Date: Tue, 21 Jul 2015 14:25:36 -0300 From: Arnaldo Carvalho de Melo To: Jiri Olsa Cc: lkml , David Ahern , Ingo Molnar , Namhyung Kim , Peter Zijlstra Subject: Re: [PATCH 10/47] perf tools: Force perf_evlist__set_maps to propagate maps through events Message-ID: <20150721172536.GI5368@kernel.org> References: <1437481927-29538-1-git-send-email-jolsa@kernel.org> <1437481927-29538-11-git-send-email-jolsa@kernel.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1437481927-29538-11-git-send-email-jolsa@kernel.org> X-Url: http://acmel.wordpress.com User-Agent: Mutt/1.5.23 (2014-03-12) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Em Tue, Jul 21, 2015 at 02:31:30PM +0200, Jiri Olsa escreveu: > Forcing perf_evlist__set_maps to propagate maps through events, > so cpu/thread maps get set within evlist. Applied > Link: http://lkml.kernel.org/n/tip-0oqwhvjdr3jgfzkbd3qee5o0@git.kernel.org > Signed-off-by: Jiri Olsa > --- > tools/perf/util/evlist.c | 17 +++++++++++++++++ > tools/perf/util/evlist.h | 11 +++-------- > 2 files changed, 20 insertions(+), 8 deletions(-) > > diff --git a/tools/perf/util/evlist.c b/tools/perf/util/evlist.c > index f1714bedd5de..3b9f411a6b46 100644 > --- a/tools/perf/util/evlist.c > +++ b/tools/perf/util/evlist.c > @@ -1151,6 +1151,23 @@ out_delete_threads: > return -1; > } > > +int perf_evlist__set_maps(struct perf_evlist *evlist, > + struct cpu_map *cpus, > + struct thread_map *threads) > +{ > + if (evlist->cpus) > + cpu_map__put(evlist->cpus); > + > + evlist->cpus = cpus; > + > + if (evlist->threads) > + thread_map__put(evlist->threads); > + > + evlist->threads = threads; > + > + return perf_evlist__propagate_maps(evlist, false); > +} > + > int perf_evlist__apply_filters(struct perf_evlist *evlist, struct perf_evsel **err_evsel) > { > struct perf_evsel *evsel; > diff --git a/tools/perf/util/evlist.h b/tools/perf/util/evlist.h > index 037633c1da9d..406a8216a51e 100644 > --- a/tools/perf/util/evlist.h > +++ b/tools/perf/util/evlist.h > @@ -152,14 +152,9 @@ int perf_evlist__enable_event_idx(struct perf_evlist *evlist, > void perf_evlist__set_selected(struct perf_evlist *evlist, > struct perf_evsel *evsel); > > -static inline void perf_evlist__set_maps(struct perf_evlist *evlist, > - struct cpu_map *cpus, > - struct thread_map *threads) > -{ > - evlist->cpus = cpus; > - evlist->threads = threads; > -} > - > +int perf_evlist__set_maps(struct perf_evlist *evlist, > + struct cpu_map *cpus, > + struct thread_map *threads); > int perf_evlist__create_maps(struct perf_evlist *evlist, struct target *target); > int perf_evlist__apply_filters(struct perf_evlist *evlist, struct perf_evsel **err_evsel); > > -- > 2.4.3