diff options
author | Jiri Olsa <jolsa@redhat.com> | 2013-10-15 10:27:32 -0400 |
---|---|---|
committer | Arnaldo Carvalho de Melo <acme@redhat.com> | 2013-10-21 16:33:24 -0400 |
commit | f5fc14124c5cefdd052a2b2a6a3f0ed531540113 (patch) | |
tree | 9cef9b2a75334478486869ff002749679a9e488d /tools/perf/util/session.c | |
parent | 09600e0f9ebb06235b852a646a3644b7d4a71aca (diff) |
perf tools: Add data object to handle perf data file
This patch is adding 'struct perf_data_file' object as a placeholder for
all attributes regarding perf.data file handling. Changing
perf_session__new to take it as an argument.
The rest of the functionality will be added later to keep this change
simple enough, because all the places using perf_session are changed
now.
Signed-off-by: Jiri Olsa <jolsa@redhat.com>
Acked-by: Namhyung Kim <namhyung@kernel.org>
Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: Andi Kleen <andi@firstfloor.org>
Cc: Corey Ashford <cjashfor@linux.vnet.ibm.com>
Cc: David Ahern <dsahern@gmail.com>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Link: http://lkml.kernel.org/r/1381847254-28809-2-git-send-email-jolsa@redhat.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'tools/perf/util/session.c')
-rw-r--r-- | tools/perf/util/session.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/tools/perf/util/session.c b/tools/perf/util/session.c index d4559ca08ca6..e3f63df1d57c 100644 --- a/tools/perf/util/session.c +++ b/tools/perf/util/session.c | |||
@@ -106,11 +106,11 @@ static void perf_session__destroy_kernel_maps(struct perf_session *self) | |||
106 | machines__destroy_kernel_maps(&self->machines); | 106 | machines__destroy_kernel_maps(&self->machines); |
107 | } | 107 | } |
108 | 108 | ||
109 | struct perf_session *perf_session__new(const char *filename, int mode, | 109 | struct perf_session *perf_session__new(struct perf_data_file *file, |
110 | bool force, bool repipe, | 110 | bool repipe, struct perf_tool *tool) |
111 | struct perf_tool *tool) | ||
112 | { | 111 | { |
113 | struct perf_session *self; | 112 | struct perf_session *self; |
113 | const char *filename = file->path; | ||
114 | struct stat st; | 114 | struct stat st; |
115 | size_t len; | 115 | size_t len; |
116 | 116 | ||
@@ -134,11 +134,11 @@ struct perf_session *perf_session__new(const char *filename, int mode, | |||
134 | INIT_LIST_HEAD(&self->ordered_samples.to_free); | 134 | INIT_LIST_HEAD(&self->ordered_samples.to_free); |
135 | machines__init(&self->machines); | 135 | machines__init(&self->machines); |
136 | 136 | ||
137 | if (mode == O_RDONLY) { | 137 | if (perf_data_file__is_read(file)) { |
138 | if (perf_session__open(self, force) < 0) | 138 | if (perf_session__open(self, file->force) < 0) |
139 | goto out_delete; | 139 | goto out_delete; |
140 | perf_session__set_id_hdr_size(self); | 140 | perf_session__set_id_hdr_size(self); |
141 | } else if (mode == O_WRONLY) { | 141 | } else if (perf_data_file__is_write(file)) { |
142 | /* | 142 | /* |
143 | * In O_RDONLY mode this will be performed when reading the | 143 | * In O_RDONLY mode this will be performed when reading the |
144 | * kernel MMAP event, in perf_event__process_mmap(). | 144 | * kernel MMAP event, in perf_event__process_mmap(). |