mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Steven Rostedt <rostedt@goodmis.org>
To: Jiri Olsa <jolsa@redhat.com>
Cc: Arnaldo Carvalho de Melo <acme@ghostprotocols.net>,
	Dmitry Antipov <dmitry.antipov@linaro.org>,
	Peter Zijlstra <a.p.zijlstra@chello.nl>,
	Paul Mackerras <paulus@samba.org>, Ingo Molnar <mingo@redhat.com>,
	Amit Kucheria <amit.kucheria@linaro.org>,
	linaro-dev@lists.linaro.org, linux-kernel@vger.kernel.org
Subject: Re: Perf record format portability
Date: Wed, 16 May 2012 15:32:23 -0400	[thread overview]
Message-ID: <1337196743.6724.66.camel@gandalf.stny.rr.com> (raw)
In-Reply-To: <20120516174825.GA11516@m.brq.redhat.com>

On Wed, 2012-05-16 at 19:48 +0200, Jiri Olsa wrote:

> for ppc64(record) vs x86_64(report) I got following report on latest tip:
> 
> [jolsa@dhcp-26-214 test]$ ../perf report > report.target
> Endianness of raw data not corrected!
> Warning:
> 718 samples with id not present in the header
> Warning:
> The perf.data file has no samples!
> 
> for following record:
> perf record -a -e sched:sched_switch -e sched:sched_process_exit -e sched:sched_process_fork -e sched:sched_wakeup -- sleep 10
> [ perf record: Woken up 1 times to write data ]
> [ perf record: Captured and wrote 0.178 MB perf.data (~7781 samples) ]
> 
> I haven't tried trace-cmd, but I guess let's wait for libparsevents
> perf integration then.. ;)
> 

It's in perf. It just needs to be set up.

Look at tools/perf/util/trace-event.h

There's a bigendian() function, a "file_bigendian" and a
"host_bigendian". If perf recorded what endian was used on the target,
and saves that in the perf.dat file, all it needs to do is update the
two variables.

file_bigendian = recorded_endian;
host_bigendian = bigendian();

1 for big endian, 0 for little endian.

Where host is the machine that is running the perf report or script.
After that, all reads of the data in events uses one of the
__data2host() macros to convert if necessary.

Note, latest trace-cmd has put all these in a pevent struct descriptor,
so that different files can be read at the same time, and these files
can be from different endian (and bit size) machines. The global
variables no longer exist.

My patches, that I and Frederic posted previously, convert perf to use
this descriptor so that perf could benefit and read multiple files too.

-- Steve



  reply	other threads:[~2012-05-16 19:32 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-05-15 15:27 Dmitry Antipov
2012-05-15 15:51 ` Arnaldo Carvalho de Melo
2012-05-16 10:50   ` Dmitry Antipov
2012-05-16 14:59     ` Arnaldo Carvalho de Melo
2012-05-16 15:16       ` Jiri Olsa
2012-05-16 15:50         ` Arnaldo Carvalho de Melo
2012-05-16 16:58       ` Steven Rostedt
2012-05-16 17:48         ` Jiri Olsa
2012-05-16 19:32           ` Steven Rostedt [this message]
2012-05-16 19:39             ` Steven Rostedt
2012-05-17  8:51               ` Jiri Olsa
2012-05-16 18:08         ` Arnaldo Carvalho de Melo
2012-05-16 18:17           ` Steven Rostedt
2012-05-17  5:10         ` Dmitry Antipov
2012-05-17 11:48           ` Steven Rostedt
2012-05-18  5:48             ` Dmitry Antipov
2012-05-29 15:10               ` Arnaldo Carvalho de Melo
2012-05-31  8:28                 ` Dmitry Antipov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1337196743.6724.66.camel@gandalf.stny.rr.com \
    --to=rostedt@goodmis.org \
    --cc=a.p.zijlstra@chello.nl \
    --cc=acme@ghostprotocols.net \
    --cc=amit.kucheria@linaro.org \
    --cc=dmitry.antipov@linaro.org \
    --cc=jolsa@redhat.com \
    --cc=linaro-dev@lists.linaro.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@redhat.com \
    --cc=paulus@samba.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®