lkml.org 
[lkml]   [2009]   [Dec]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
From
Subject[PATCH 1/2] Does raw_field_ptr() supports __data_loc?
Date
VERY very sorry for my long silence...

Please don't commit this patch, Ingo.
This patch is required to test the next patch for perf lock.

I have a question for Steven Rostedt and Tom Zanussi.
Does current raw_field_ptr() support __data_loc?

At 064739bc4b3d7f424b2f25547e6611bcf0132415 ,
support for the modifier "__data_loc" of format is added.

But, when I wanted to parse format of lock_acquired (or some event else),
raw_field_ptr() did not returned correct pointer.

So I modified raw_field_ptr() like this patch. Then raw_field_ptr() works well.
Parser was large so I'd like to ask you about this.

Cc: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Tom Zanussi <tzanussi@gmail.com>
Cc: Steven Rostedt <srostedt@redhat.com>

I have a question
---
tools/perf/util/trace-event-parse.c | 7 +++++++
1 files changed, 7 insertions(+), 0 deletions(-)

diff --git a/tools/perf/util/trace-event-parse.c b/tools/perf/util/trace-event-parse.c
index 0302405..494a470 100644
--- a/tools/perf/util/trace-event-parse.c
+++ b/tools/perf/util/trace-event-parse.c
@@ -1925,6 +1925,13 @@ 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;
}

--
1.6.5.2


\
 
 \ /
  Last update: 2009-12-07 04:37    [W:0.090 / U:0.700 seconds]
©2003-2017 Jasper Spaans. hosted at Digital OceanAdvertise on this site