summaryrefslogtreecommitdiff
path: root/tools/perf/util/trace-event-parse.c
diff options
context:
space:
mode:
authorRobert Richter <robert.richter@amd.com>2010-04-23 14:30:22 +0200
committerRobert Richter <robert.richter@amd.com>2010-04-23 14:30:22 +0200
commita36bf32e9e8a86f291f746b7f8292e042ee04a46 (patch)
treec5c999baa4c214218e3adea9b336cbd9f23950ad /tools/perf/util/trace-event-parse.c
parentbc078e4eab65f11bbaeed380593ab8151b30d703 (diff)
parent01bf0b64579ead8a82e7cfc32ae44bc667e7ad0f (diff)
Merge commit 'v2.6.34-rc5' into oprofile/core
Diffstat (limited to 'tools/perf/util/trace-event-parse.c')
-rw-r--r--tools/perf/util/trace-event-parse.c24
1 files changed, 24 insertions, 0 deletions
diff --git a/tools/perf/util/trace-event-parse.c b/tools/perf/util/trace-event-parse.c
index c5c32be040bf..9b3c20f42f98 100644
--- a/tools/perf/util/trace-event-parse.c
+++ b/tools/perf/util/trace-event-parse.c
@@ -1925,6 +1925,15 @@ void *raw_field_ptr(struct event *event, const char *name, void *data)
if (!field)
return NULL;
+ if (field->flags & FIELD_IS_STRING) {
+ int offset;
+
+ offset = *(int *)(data + field->offset);
+ offset &= 0xffff;
+
+ return data + offset;
+ }
+
return data + field->offset;
}
@@ -3277,3 +3286,18 @@ void parse_set_info(int nr_cpus, int long_sz)
cpus = nr_cpus;
long_size = long_sz;
}
+
+int common_pc(struct scripting_context *context)
+{
+ return parse_common_pc(context->event_data);
+}
+
+int common_flags(struct scripting_context *context)
+{
+ return parse_common_flags(context->event_data);
+}
+
+int common_lock_depth(struct scripting_context *context)
+{
+ return parse_common_lock_depth(context->event_data);
+}