Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754402AbbGUMcc (ORCPT ); Tue, 21 Jul 2015 08:32:32 -0400 Received: from mx1.redhat.com ([209.132.183.28]:55817 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754062AbbGUMca (ORCPT ); Tue, 21 Jul 2015 08:32:30 -0400 From: Jiri Olsa To: Arnaldo Carvalho de Melo Cc: lkml , David Ahern , Ingo Molnar , Namhyung Kim , Peter Zijlstra Subject: [PATCH 10/47] perf tools: Force perf_evlist__set_maps to propagate maps through events Date: Tue, 21 Jul 2015 14:31:30 +0200 Message-Id: <1437481927-29538-11-git-send-email-jolsa@kernel.org> In-Reply-To: <1437481927-29538-1-git-send-email-jolsa@kernel.org> References: <1437481927-29538-1-git-send-email-jolsa@kernel.org> Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2167 Lines: 68 Forcing perf_evlist__set_maps to propagate maps through events, so cpu/thread maps get set within evlist. 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 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/