diff options
Diffstat (limited to 'tools/perf/util/scripting-engines/trace-event-perl.c')
| -rw-r--r-- | tools/perf/util/scripting-engines/trace-event-perl.c | 2 | 
1 files changed, 2 insertions, 0 deletions
diff --git a/tools/perf/util/scripting-engines/trace-event-perl.c b/tools/perf/util/scripting-engines/trace-event-perl.c index 32a721b3e9a5..a5d945415bbc 100644 --- a/tools/perf/util/scripting-engines/trace-event-perl.c +++ b/tools/perf/util/scripting-engines/trace-event-perl.c @@ -392,6 +392,8 @@ static void perl_process_tracepoint(struct perf_sample *sample,  			if (field->flags & TEP_FIELD_IS_DYNAMIC) {  				offset = *(int *)(data + field->offset);  				offset &= 0xffff; +				if (field->flags & TEP_FIELD_IS_RELATIVE) +					offset += field->offset + field->size;  			} else  				offset = field->offset;  			XPUSHs(sv_2mortal(newSVpv((char *)data + offset, 0)));  |