From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752689AbbFZIpt (ORCPT ); Fri, 26 Jun 2015 04:45:49 -0400 Received: from terminus.zytor.com ([198.137.202.10]:52209 "EHLO terminus.zytor.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751888AbbFZIpr (ORCPT ); Fri, 26 Jun 2015 04:45:47 -0400 Date: Fri, 26 Jun 2015 01:45:25 -0700 From: tip-bot for Jiri Olsa Message-ID: Cc: dsahern@gmail.com, tglx@linutronix.de, eranian@google.com, hpa@zytor.com, a.p.zijlstra@chello.nl, ak@linux.intel.com, adrian.hunter@intel.com, jolsa@kernel.org, mingo@kernel.org, acme@redhat.com, namhyung@kernel.org, linux-kernel@vger.kernel.org Reply-To: adrian.hunter@intel.com, ak@linux.intel.com, jolsa@kernel.org, mingo@kernel.org, linux-kernel@vger.kernel.org, namhyung@kernel.org, acme@redhat.com, tglx@linutronix.de, dsahern@gmail.com, hpa@zytor.com, a.p.zijlstra@chello.nl, eranian@google.com In-Reply-To: <1435012588-9007-7-git-send-email-jolsa@kernel.org> References: <1435012588-9007-7-git-send-email-jolsa@kernel.org> To: linux-tip-commits@vger.kernel.org Subject: [tip:perf/urgent] perf evlist: Propagate thread maps through the evlist Git-Commit-ID: 578e91ec04d03aca89e300151addb3e3ed5b06ea X-Mailer: tip-git-log-daemon Robot-ID: Robot-Unsubscribe: Contact to get blacklisted from these emails MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset=UTF-8 Content-Disposition: inline Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Commit-ID: 578e91ec04d03aca89e300151addb3e3ed5b06ea Gitweb: http://git.kernel.org/tip/578e91ec04d03aca89e300151addb3e3ed5b06ea Author: Jiri Olsa AuthorDate: Tue, 23 Jun 2015 00:36:07 +0200 Committer: Arnaldo Carvalho de Melo CommitDate: Thu, 25 Jun 2015 15:15:51 -0300 perf evlist: Propagate thread maps through the evlist Propagate evlist's thread_map object through all the evsel objects. It'll be handy to access evsel's threads directly in following patches. The reason is there's no link from evsel to evlist which hold threads map now and evlist is not always available. Signed-off-by: Jiri Olsa Cc: Adrian Hunter Cc: Andi Kleen Cc: David Ahern Cc: Namhyung Kim Cc: Peter Zijlstra Cc: Stephane Eranian Link: http://lkml.kernel.org/r/1435012588-9007-7-git-send-email-jolsa@kernel.org Signed-off-by: Arnaldo Carvalho de Melo --- tools/perf/util/evlist.c | 4 +++- tools/perf/util/evsel.c | 1 + tools/perf/util/evsel.h | 1 + 3 files changed, 5 insertions(+), 1 deletion(-) diff --git a/tools/perf/util/evlist.c b/tools/perf/util/evlist.c index 214affa..6cfdee6 100644 --- a/tools/perf/util/evlist.c +++ b/tools/perf/util/evlist.c @@ -1117,7 +1117,9 @@ static int perf_evlist__propagate_maps(struct perf_evlist *evlist, if (!evsel->cpus || target->cpu_list) evsel->cpus = cpu_map__get(evlist->cpus); - if (!evsel->cpus) + evsel->threads = thread_map__get(evlist->threads); + + if (!evsel->cpus || !evsel->threads) return -ENOMEM; } diff --git a/tools/perf/util/evsel.c b/tools/perf/util/evsel.c index 31b0afb..1b2f480 100644 --- a/tools/perf/util/evsel.c +++ b/tools/perf/util/evsel.c @@ -886,6 +886,7 @@ void perf_evsel__exit(struct perf_evsel *evsel) perf_evsel__free_id(evsel); close_cgroup(evsel->cgrp); cpu_map__put(evsel->cpus); + thread_map__put(evsel->threads); zfree(&evsel->group_name); zfree(&evsel->name); perf_evsel__object.fini(evsel); diff --git a/tools/perf/util/evsel.h b/tools/perf/util/evsel.h index bb0579e..9e16a5c 100644 --- a/tools/perf/util/evsel.h +++ b/tools/perf/util/evsel.h @@ -82,6 +82,7 @@ struct perf_evsel { struct cgroup_sel *cgrp; void *handler; struct cpu_map *cpus; + struct thread_map *threads; unsigned int sample_size; int id_pos; int is_pos;