lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Date:	Thu,  3 Mar 2016 13:50:48 +0200
From:	Adrian Hunter <adrian.hunter@...el.com>
To:	Arnaldo Carvalho de Melo <acme@...nel.org>
Cc:	Jiri Olsa <jolsa@...hat.com>, linux-kernel@...r.kernel.org,
	Stephane Eranian <eranian@...gle.com>
Subject: [PATCH 0/8] perf tools: Add Intel PT support for jitdump

Hi

In order to use Intel PT with jitdump, changes are needed
because Intel PT uses TSC as a timestamp not the monotonic clock.

These patches enable TSC to be used which allows the following
using a simple HelloWorld java app:

	perf record -e intel_pt//u -o java.perf.data java -agentpath:/home/ahunter/git/linux-perf/tools/perf/jvmti/libjvmti.so HelloWorldApp

	perf inject -i java.perf.data --jit -o java.perf.data.jitted

	perf report -i java.perf.data.jitted

	perf script -i java.perf.data.jitted | less

Note, there will be some decoder errors because not all the
generated code is reported to the agent.

Lazily, there is also an unrelated patch:

	perf tools: Use 64-bit shifts with (TSC) time conversion"


Adrian Hunter (8):
      perf inject: Hit all DSOs for AUX data in JIT and other cases
      perf session: Simplify tool stubs
      perf tools: Add time conversion event
      perf jit: Let jit_process() return errors
      perf jit: Move clockid validation
      perf jit: Add support for using TSC as a timestamp
      perf intel-pt/bts: Define JITDUMP_USE_ARCH_TIMESTAMP
      perf tools: Use 64-bit shifts with (TSC) time conversion

 tools/perf/arch/x86/tests/rdpmc.c    |  2 +-
 tools/perf/arch/x86/util/intel-bts.c |  5 +++
 tools/perf/arch/x86/util/intel-pt.c  |  5 +++
 tools/perf/arch/x86/util/tsc.c       | 31 +++++++++++++++++
 tools/perf/builtin-inject.c          | 53 ++++++++++++-----------------
 tools/perf/builtin-record.c          | 15 +++++++++
 tools/perf/jvmti/jvmti_agent.c       | 43 ++++++++++++++++++++++--
 tools/perf/util/event.c              |  1 +
 tools/perf/util/event.h              |  9 +++++
 tools/perf/util/jitdump.c            | 64 ++++++++++++++++++++++++++++++++----
 tools/perf/util/jitdump.h            |  3 ++
 tools/perf/util/session.c            | 46 ++++++++------------------
 tools/perf/util/session.h            |  1 +
 tools/perf/util/tool.h               |  1 +
 tools/perf/util/tsc.c                |  2 +-
 tools/perf/util/tsc.h                | 10 ++++++
 16 files changed, 216 insertions(+), 75 deletions(-)


Regards
Adrian

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ