perf evsel: Introduce rawptr() method

Will be used for things like the args field in the raw_syscalls:sys_enter
tracepoint.

Implement strval with it, its basicaly strval returning void *.

Cc: David Ahern <dsahern@gmail.com>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Mike Galbraith <efault@gmx.de>
Cc: Namhyung Kim <namhyung@gmail.com>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Stephane Eranian <eranian@google.com>
Link: http://lkml.kernel.org/n/tip-v9x3q9rv4caxtox7wtjpchq5@git.kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
This commit is contained in:
Arnaldo Carvalho de Melo 2012-09-26 20:22:00 -03:00
parent 82fe1c290c
commit 5d2074ea4f
2 changed files with 9 additions and 2 deletions

View File

@ -1104,7 +1104,7 @@ struct format_field *perf_evsel__field(struct perf_evsel *evsel, const char *nam
return pevent_find_field(evsel->tp_format, name); return pevent_find_field(evsel->tp_format, name);
} }
char *perf_evsel__strval(struct perf_evsel *evsel, struct perf_sample *sample, void *perf_evsel__rawptr(struct perf_evsel *evsel, struct perf_sample *sample,
const char *name) const char *name)
{ {
struct format_field *field = perf_evsel__field(evsel, name); struct format_field *field = perf_evsel__field(evsel, name);

View File

@ -128,11 +128,18 @@ void perf_evsel__close(struct perf_evsel *evsel, int ncpus, int nthreads);
struct perf_sample; struct perf_sample;
char *perf_evsel__strval(struct perf_evsel *evsel, struct perf_sample *sample, void *perf_evsel__rawptr(struct perf_evsel *evsel, struct perf_sample *sample,
const char *name); const char *name);
u64 perf_evsel__intval(struct perf_evsel *evsel, struct perf_sample *sample, u64 perf_evsel__intval(struct perf_evsel *evsel, struct perf_sample *sample,
const char *name); const char *name);
static inline char *perf_evsel__strval(struct perf_evsel *evsel,
struct perf_sample *sample,
const char *name)
{
return perf_evsel__rawptr(evsel, sample, name);
}
struct format_field; struct format_field;
struct format_field *perf_evsel__field(struct perf_evsel *evsel, const char *name); struct format_field *perf_evsel__field(struct perf_evsel *evsel, const char *name);