From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932975AbbA3Scu (ORCPT ); Fri, 30 Jan 2015 13:32:50 -0500 Received: from terminus.zytor.com ([198.137.202.10]:35789 "EHLO terminus.zytor.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932886AbbA3Scq (ORCPT ); Fri, 30 Jan 2015 13:32:46 -0500 Date: Fri, 30 Jan 2015 10:32:26 -0800 From: tip-bot for Namhyung Kim Message-ID: Cc: linux-kernel@vger.kernel.org, namhyung@kernel.org, eranian@google.com, adrian.hunter@intel.com, mingo@kernel.org, hpa@zytor.com, andi@firstfloor.org, dsahern@gmail.com, a.p.zijlstra@chello.nl, acme@redhat.com, fweisbec@gmail.com, tglx@linutronix.de, jolsa@redhat.com Reply-To: namhyung@kernel.org, linux-kernel@vger.kernel.org, eranian@google.com, adrian.hunter@intel.com, andi@firstfloor.org, dsahern@gmail.com, hpa@zytor.com, mingo@kernel.org, fweisbec@gmail.com, tglx@linutronix.de, jolsa@redhat.com, a.p.zijlstra@chello.nl, acme@redhat.com In-Reply-To: <1422518843-25818-3-git-send-email-namhyung@kernel.org> References: <1422518843-25818-3-git-send-email-namhyung@kernel.org> To: linux-tip-commits@vger.kernel.org Subject: [tip:perf/core] perf tools: Do not use __perf_session__process_events() directly Git-Commit-ID: 4ac30cf74b308fb01338e660d3471cd490a7958a 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: 4ac30cf74b308fb01338e660d3471cd490a7958a Gitweb: http://git.kernel.org/tip/4ac30cf74b308fb01338e660d3471cd490a7958a Author: Namhyung Kim AuthorDate: Thu, 29 Jan 2015 17:06:43 +0900 Committer: Arnaldo Carvalho de Melo CommitDate: Thu, 29 Jan 2015 16:36:32 -0300 perf tools: Do not use __perf_session__process_events() directly It's only used for perf record to process build-id because its file size it's not fixed at this time due to remaining header features. However data offset and size is available so that we can use the perf_session__process_events() once we set the file size as the current offset like for now. Signed-off-by: Namhyung Kim Cc: Adrian Hunter Cc: Andi Kleen Cc: David Ahern Cc: Frederic Weisbecker Cc: Jiri Olsa Cc: Peter Zijlstra Cc: Stephane Eranian Link: http://lkml.kernel.org/r/1422518843-25818-3-git-send-email-namhyung@kernel.org Signed-off-by: Arnaldo Carvalho de Melo --- tools/perf/builtin-record.c | 7 +++---- tools/perf/util/session.c | 6 +++--- tools/perf/util/session.h | 3 --- 3 files changed, 6 insertions(+), 10 deletions(-) diff --git a/tools/perf/builtin-record.c b/tools/perf/builtin-record.c index 8648c6d..1134de2 100644 --- a/tools/perf/builtin-record.c +++ b/tools/perf/builtin-record.c @@ -194,12 +194,13 @@ static int process_buildids(struct record *rec) { struct perf_data_file *file = &rec->file; struct perf_session *session = rec->session; - u64 start = session->header.data_offset; u64 size = lseek(file->fd, 0, SEEK_CUR); if (size == 0) return 0; + file->size = size; + /* * During this process, it'll load kernel map and replace the * dso->long_name to a real pathname it found. In this case @@ -211,9 +212,7 @@ static int process_buildids(struct record *rec) */ symbol_conf.ignore_vmlinux_buildid = true; - return __perf_session__process_events(session, start, - size - start, - size, &build_id__mark_dso_hit_ops); + return perf_session__process_events(session, &build_id__mark_dso_hit_ops); } static void perf_event__synthesize_guest_os(struct machine *machine, void *data) diff --git a/tools/perf/util/session.c b/tools/perf/util/session.c index b0ce3d6..0baf75f 100644 --- a/tools/perf/util/session.c +++ b/tools/perf/util/session.c @@ -1251,9 +1251,9 @@ fetch_mmaped_event(struct perf_session *session, #define NUM_MMAPS 128 #endif -int __perf_session__process_events(struct perf_session *session, - u64 data_offset, u64 data_size, - u64 file_size, struct perf_tool *tool) +static int __perf_session__process_events(struct perf_session *session, + u64 data_offset, u64 data_size, + u64 file_size, struct perf_tool *tool) { int fd = perf_data_file__fd(session->file); u64 head, page_offset, file_offset, file_pos, size; diff --git a/tools/perf/util/session.h b/tools/perf/util/session.h index dc26ebf..6d663dc 100644 --- a/tools/perf/util/session.h +++ b/tools/perf/util/session.h @@ -49,9 +49,6 @@ int perf_session__peek_event(struct perf_session *session, off_t file_offset, union perf_event **event_ptr, struct perf_sample *sample); -int __perf_session__process_events(struct perf_session *session, - u64 data_offset, u64 data_size, u64 size, - struct perf_tool *tool); int perf_session__process_events(struct perf_session *session, struct perf_tool *tool);