diff options
author | Masami Hiramatsu <mhiramat@redhat.com> | 2009-12-15 10:31:14 -0500 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2009-12-15 14:21:59 -0500 |
commit | fac13fd54e2bfbb0b49683a9b3ae2bf2a0d7677f (patch) | |
tree | 7ba607c0778289fca86add04373636b4a6c620ac /tools/perf/util | |
parent | f13c12c634e124d5d31f912b969d542a016d6105 (diff) |
perf probe: Cleanup struct session in builtin-probe.c
Clean up struct session in builtin-probe.c, including
change need_dwarf to bool and move listing flag into
struct session as list_events flag.
This also changes parse_perf_probe_event() interface
due to code readability.
Signed-off-by: Masami Hiramatsu <mhiramat@redhat.com>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: Steven Rostedt <rostedt@goodmis.org>
Cc: Jim Keniston <jkenisto@us.ibm.com>
Cc: Ananth N Mavinakayanahalli <ananth@in.ibm.com>
Cc: Christoph Hellwig <hch@infradead.org>
Cc: Frank Ch. Eigler <fche@redhat.com>
Cc: Jason Baron <jbaron@redhat.com>
Cc: K.Prasad <prasad@linux.vnet.ibm.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Srikar Dronamraju <srikar@linux.vnet.ibm.com>
Cc: systemtap <systemtap@sources.redhat.com>
Cc: DLE <dle-develop@lists.sourceforge.net>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
LKML-Reference: <20091215153114.17436.77000.stgit@dhcp-100-2-132.bos.redhat.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'tools/perf/util')
-rw-r--r-- | tools/perf/util/probe-event.c | 12 | ||||
-rw-r--r-- | tools/perf/util/probe-event.h | 4 |
2 files changed, 10 insertions, 6 deletions
diff --git a/tools/perf/util/probe-event.c b/tools/perf/util/probe-event.c index d14a4585bcaf..add379c55c36 100644 --- a/tools/perf/util/probe-event.c +++ b/tools/perf/util/probe-event.c | |||
@@ -150,10 +150,13 @@ static void parse_perf_probe_probepoint(char *arg, struct probe_point *pp) | |||
150 | } | 150 | } |
151 | 151 | ||
152 | /* Parse perf-probe event definition */ | 152 | /* Parse perf-probe event definition */ |
153 | int parse_perf_probe_event(const char *str, struct probe_point *pp) | 153 | void parse_perf_probe_event(const char *str, struct probe_point *pp, |
154 | bool *need_dwarf) | ||
154 | { | 155 | { |
155 | char **argv; | 156 | char **argv; |
156 | int argc, i, need_dwarf = 0; | 157 | int argc, i; |
158 | |||
159 | *need_dwarf = false; | ||
157 | 160 | ||
158 | argv = argv_split(str, &argc); | 161 | argv = argv_split(str, &argc); |
159 | if (!argv) | 162 | if (!argv) |
@@ -164,7 +167,7 @@ int parse_perf_probe_event(const char *str, struct probe_point *pp) | |||
164 | /* Parse probe point */ | 167 | /* Parse probe point */ |
165 | parse_perf_probe_probepoint(argv[0], pp); | 168 | parse_perf_probe_probepoint(argv[0], pp); |
166 | if (pp->file || pp->line) | 169 | if (pp->file || pp->line) |
167 | need_dwarf = 1; | 170 | *need_dwarf = true; |
168 | 171 | ||
169 | /* Copy arguments and ensure return probe has no C argument */ | 172 | /* Copy arguments and ensure return probe has no C argument */ |
170 | pp->nr_args = argc - 1; | 173 | pp->nr_args = argc - 1; |
@@ -177,12 +180,11 @@ int parse_perf_probe_event(const char *str, struct probe_point *pp) | |||
177 | if (pp->retprobe) | 180 | if (pp->retprobe) |
178 | semantic_error("You can't specify local" | 181 | semantic_error("You can't specify local" |
179 | " variable for kretprobe"); | 182 | " variable for kretprobe"); |
180 | need_dwarf = 1; | 183 | *need_dwarf = true; |
181 | } | 184 | } |
182 | } | 185 | } |
183 | 186 | ||
184 | argv_free(argv); | 187 | argv_free(argv); |
185 | return need_dwarf; | ||
186 | } | 188 | } |
187 | 189 | ||
188 | /* Parse kprobe_events event into struct probe_point */ | 190 | /* Parse kprobe_events event into struct probe_point */ |
diff --git a/tools/perf/util/probe-event.h b/tools/perf/util/probe-event.h index f752159124ae..028575b5fc3b 100644 --- a/tools/perf/util/probe-event.h +++ b/tools/perf/util/probe-event.h | |||
@@ -1,10 +1,12 @@ | |||
1 | #ifndef _PROBE_EVENT_H | 1 | #ifndef _PROBE_EVENT_H |
2 | #define _PROBE_EVENT_H | 2 | #define _PROBE_EVENT_H |
3 | 3 | ||
4 | #include <stdbool.h> | ||
4 | #include "probe-finder.h" | 5 | #include "probe-finder.h" |
5 | #include "strlist.h" | 6 | #include "strlist.h" |
6 | 7 | ||
7 | extern int parse_perf_probe_event(const char *str, struct probe_point *pp); | 8 | extern void parse_perf_probe_event(const char *str, struct probe_point *pp, |
9 | bool *need_dwarf); | ||
8 | extern int synthesize_perf_probe_event(struct probe_point *pp); | 10 | extern int synthesize_perf_probe_event(struct probe_point *pp); |
9 | extern void parse_trace_kprobe_event(const char *str, char **group, | 11 | extern void parse_trace_kprobe_event(const char *str, char **group, |
10 | char **event, struct probe_point *pp); | 12 | char **event, struct probe_point *pp); |