From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754030AbcA2KRt (ORCPT ); Fri, 29 Jan 2016 05:17:49 -0500 Received: from mga02.intel.com ([134.134.136.20]:55150 "EHLO mga02.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752507AbcA2KRq (ORCPT ); Fri, 29 Jan 2016 05:17:46 -0500 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.22,363,1449561600"; d="scan'208";a="871586281" Subject: Re: [PATCH V8 21/23] perf tools: adding perf_evlist to *info_priv_size() To: Arnaldo Carvalho de Melo , Mathieu Poirier References: <1452807977-8069-1-git-send-email-mathieu.poirier@linaro.org> <1452807977-8069-22-git-send-email-mathieu.poirier@linaro.org> <20160125210858.GC22501@kernel.org> <56A78268.7020102@intel.com> Cc: "linux-arm-kernel@lists.infradead.org" , Peter Zijlstra , "linux-kernel@vger.kernel.org" , Ingo Molnar From: Adrian Hunter Organization: Intel Finland Oy, Registered Address: PL 281, 00181 Helsinki, Business Identity Code: 0357606 - 4, Domiciled in Helsinki Message-ID: <56AB3B7B.7050906@intel.com> Date: Fri, 29 Jan 2016 12:14:19 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.5.1 MIME-Version: 1.0 In-Reply-To: <56A78268.7020102@intel.com> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 26/01/16 16:27, Adrian Hunter wrote: > On 25/01/16 23:08, Arnaldo Carvalho de Melo wrote: >> Em Mon, Jan 25, 2016 at 01:48:28PM -0700, Mathieu Poirier escreveu: >>> On 14 January 2016 at 14:46, Mathieu Poirier wrote: >>>> On some architecture the size of the private header may >>>> be dependent on the number of tracers used in the session. As >>>> such adding a "struct perf_evlist *" parameter, which should >>>> contain all the required information. >>>> >>>> Also adjusting the existing client of the interface to take >>>> the new parameter into account. >>>> >>>> Cc: Peter Zijlstra >>>> Cc: Ingo Molnar >>>> Cc: Arnaldo Carvalho de Melo >>>> Signed-off-by: Mathieu Poirier >>>> --- >>>> tools/perf/arch/x86/util/intel-bts.c | 4 +++- >>>> tools/perf/arch/x86/util/intel-pt.c | 4 +++- >>>> tools/perf/util/auxtrace.c | 7 ++++--- >>>> tools/perf/util/auxtrace.h | 6 ++++-- >>>> 4 files changed, 14 insertions(+), 7 deletions(-) >>>> >>>> diff --git a/tools/perf/arch/x86/util/intel-bts.c b/tools/perf/arch/x86/util/intel-bts.c >>>> index 9b94ce520917..4685a40777cc 100644 >>>> --- a/tools/perf/arch/x86/util/intel-bts.c >>>> +++ b/tools/perf/arch/x86/util/intel-bts.c >>>> @@ -60,7 +60,9 @@ struct branch { >>>> u64 misc; >>>> }; >>>> >>>> -static size_t intel_bts_info_priv_size(struct auxtrace_record *itr __maybe_unused) >>>> +static size_t >>>> +intel_bts_info_priv_size(struct auxtrace_record *itr __maybe_unused, >>>> + struct perf_evlist *evlist __maybe_unused) >>>> { >>>> return INTEL_BTS_AUXTRACE_PRIV_SIZE; >>>> } >>>> diff --git a/tools/perf/arch/x86/util/intel-pt.c b/tools/perf/arch/x86/util/intel-pt.c >>>> index b02af064f0f9..e5c1f2e21f87 100644 >>>> --- a/tools/perf/arch/x86/util/intel-pt.c >>>> +++ b/tools/perf/arch/x86/util/intel-pt.c >>>> @@ -273,7 +273,9 @@ intel_pt_pmu_default_config(struct perf_pmu *intel_pt_pmu) >>>> return attr; >>>> } >>>> >>>> -static size_t intel_pt_info_priv_size(struct auxtrace_record *itr __maybe_unused) >>>> +static size_t >>>> +intel_pt_info_priv_size(struct auxtrace_record *itr __maybe_unused, >>>> + struct perf_evlist *evlist __maybe_unused) >>>> { >>>> return INTEL_PT_AUXTRACE_PRIV_SIZE; >>>> } >>>> diff --git a/tools/perf/util/auxtrace.c b/tools/perf/util/auxtrace.c >>>> index 7f10430af39c..cc1c9ce5cc56 100644 >>>> --- a/tools/perf/util/auxtrace.c >>>> +++ b/tools/perf/util/auxtrace.c >>>> @@ -478,10 +478,11 @@ void auxtrace_heap__pop(struct auxtrace_heap *heap) >>>> heap_array[last].ordinal); >>>> } >>>> >>>> -size_t auxtrace_record__info_priv_size(struct auxtrace_record *itr) >>>> +size_t auxtrace_record__info_priv_size(struct auxtrace_record *itr, >>>> + struct perf_evlist *evlist) >>>> { >>>> if (itr) >>>> - return itr->info_priv_size(itr); >>>> + return itr->info_priv_size(itr, evlist); >>>> return 0; >>>> } >>>> >>>> @@ -852,7 +853,7 @@ int perf_event__synthesize_auxtrace_info(struct auxtrace_record *itr, >>>> int err; >>>> >>>> pr_debug2("Synthesizing auxtrace information\n"); >>>> - priv_size = auxtrace_record__info_priv_size(itr); >>>> + priv_size = auxtrace_record__info_priv_size(itr, session->evlist); >>>> ev = zalloc(sizeof(struct auxtrace_info_event) + priv_size); >>>> if (!ev) >>>> return -ENOMEM; >>>> diff --git a/tools/perf/util/auxtrace.h b/tools/perf/util/auxtrace.h >>>> index b86f90db1352..e5a8e2d4f2af 100644 >>>> --- a/tools/perf/util/auxtrace.h >>>> +++ b/tools/perf/util/auxtrace.h >>>> @@ -293,7 +293,8 @@ struct auxtrace_record { >>>> int (*recording_options)(struct auxtrace_record *itr, >>>> struct perf_evlist *evlist, >>>> struct record_opts *opts); >>>> - size_t (*info_priv_size)(struct auxtrace_record *itr); >>>> + size_t (*info_priv_size)(struct auxtrace_record *itr, >>>> + struct perf_evlist *evlist); >>>> int (*info_fill)(struct auxtrace_record *itr, >>>> struct perf_session *session, >>>> struct auxtrace_info_event *auxtrace_info, >>>> @@ -429,7 +430,8 @@ int auxtrace_parse_snapshot_options(struct auxtrace_record *itr, >>>> int auxtrace_record__options(struct auxtrace_record *itr, >>>> struct perf_evlist *evlist, >>>> struct record_opts *opts); >>>> -size_t auxtrace_record__info_priv_size(struct auxtrace_record *itr); >>>> +size_t auxtrace_record__info_priv_size(struct auxtrace_record *itr, >>>> + struct perf_evlist *evlist); >>>> int auxtrace_record__info_fill(struct auxtrace_record *itr, >>>> struct perf_session *session, >>>> struct auxtrace_info_event *auxtrace_info, >>>> -- >>>> 2.1.4 >>>> >>> >>> Arnaldo, >>> >>> As with my previous email, I can't queue this patch for 4.6 without at >>> least a reviewed by from you. >>> >>> It has been rebased to 4.5-rc1 here [1] for your convenience. I will >>> be happy to use another baseline should that be more adequate for you. >> >> Adrian, are you ok with this? > > I will try to look at this and the others in the next day or two. Acked-by: Adrian Hunter