Re: Perf record format portability

From: Dmitry Antipov
Date: Thu May 17 2012 - 01:08:47 EST


On 05/16/2012 08:58 PM, Steven Rostedt wrote:

On Wed, 2012-05-16 at 11:59 -0300, Arnaldo Carvalho de Melo wrote:

Steve,

Was the kernel trace events infrastructure designed with that in
mind? I.e. cross analysis? I must be missing something here, still
ENOCOFFEE :-\

Yes, the libparsevents library was design for this from day one. That's
why trace-cmd data file can be run on an ARM and read on x86, or PPC, or
whatever. I did all my development testing against 32bit, 64bit and big
and little endian. This was the case from the beginning.

I didn't face with big/little conversion issues, most probably both x86 and
my ARM board are of the same (little) endian :-).

But the original question was about event IDs. For example,
/sys/kernel/debug/tracing/events/sched/sched_switch/id is 55 on my ARM board
and 279 on my PC host, so 'perf report' displays "unknown:unknown" instead
of expected "sched:sched_switch" when attempting to do some cross-analysis.
I suppose that original event IDs should be preserved, either within perf.data
or by providing the copy of original /sys/kernel/debug/tracing/*, much like
it's done with --kallsyms to resolve kernel symbols.

Dmitry
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/