lkml.org 
[lkml]   [2020]   [Jul]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
Subject[PATCH v1 0/3] Perf tool: Enable Arm arch timer counter and arm-spe's timestamp
Date
This patch set is to enable Arm arch timer counter and Arm SPE is the
first customer to use arch timer counter for its timestamp.

The patch 01 is to retrieve arch timer's parameters from mmaped page;
patch 02 provides APIs for the conversion between arch timer's counter
and time; patch 03 is to enable timestamp based on the new introduced
APIs for timestamp related calculation.

Note, this patch set is depend on the kernel changes for "arm64: perf:
Proper cap_user_time* support" [1].

This patch set has been rebased on mainline kernel with the latest
commit 11ba468877bb ("Linux 5.8-rc5") and also applied on top of patch
set [1]. After enabling the timestamp, the samples can show the
timestamp, and the timestamp is consistent with the kernel's timestamp
by checking the kernel log:

$ perf script -F,+time
dd 6799 [034] 25496.733475: 1 l1d-access: ffff87f37b88 _dl_start+0x288 (/usr/lib/aarch64-linux-gnu/ld-2.28.so)
dd 6799 [034] 25496.733475: 1 tlb-access: ffff87f37b88 _dl_start+0x288 (/usr/lib/aarch64-linux-gnu/ld-2.28.so)
dd 6799 [034] 25496.733479: 1 l1d-access: ffff87f37c74 _dl_start+0x374 (/usr/lib/aarch64-linux-gnu/ld-2.28.so)
dd 6799 [034] 25496.733479: 1 tlb-access: ffff87f37c74 _dl_start+0x374 (/usr/lib/aarch64-linux-gnu/ld-2.28.so)
dd 6799 [034] 25496.733485: 1 l1d-access: ffff87f49af4 __GI___tunables_init+0x3c (/usr/lib/aarch64-linux-gnu/ld-2.28.so)
dd 6799 [034] 25496.733485: 1 tlb-access: ffff87f49af4 __GI___tunables_init+0x3c (/usr/lib/aarch64-linux-gnu/ld-2.28.so)

[1] https://patchwork.kernel.org/project/linux-arm-kernel/list/?series=318401


Leo Yan (3):
perf tools: Support Arm arch timer counter
perf arm_arch_timer: Convert between counter and timestamp
perf arm-spe: Enable timestamp with arch timer counter

tools/perf/arch/arm64/util/Build | 1 +
tools/perf/arch/arm64/util/arch_timer.c | 50 +++++++++++++++++++++++++
tools/perf/arch/arm64/util/arm-spe.c | 17 +++++++++
tools/perf/util/Build | 1 +
tools/perf/util/arm-spe.c | 16 +++++++-
tools/perf/util/arm-spe.h | 5 +++
tools/perf/util/arm_arch_timer.c | 28 ++++++++++++++
tools/perf/util/arm_arch_timer.h | 23 ++++++++++++
8 files changed, 139 insertions(+), 2 deletions(-)
create mode 100644 tools/perf/arch/arm64/util/arch_timer.c
create mode 100644 tools/perf/util/arm_arch_timer.c
create mode 100644 tools/perf/util/arm_arch_timer.h

--
2.17.1

\
 
 \ /
  Last update: 2020-07-15 04:35    [W:0.142 / U:0.016 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site