[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20190810072135.27072-1-leo.yan@linaro.org>
Date: Sat, 10 Aug 2019 15:21:33 +0800
From: Leo Yan <leo.yan@...aro.org>
To: Arnaldo Carvalho de Melo <acme@...nel.org>,
Alexander Shishkin <alexander.shishkin@...ux.intel.com>,
Jiri Olsa <jolsa@...hat.com>,
Namhyung Kim <namhyung@...nel.org>,
Alexei Starovoitov <ast@...nel.org>,
Daniel Borkmann <daniel@...earbox.net>,
Martin KaFai Lau <kafai@...com>,
Song Liu <songliubraving@...com>, Yonghong Song <yhs@...com>,
David Miller <davem@...emloft.net>,
Milian Wolff <milian.wolff@...b.com>,
Donald Yandt <donald.yandt@...il.com>,
Davidlohr Bueso <dave@...olabs.net>,
Wei Li <liwei391@...wei.com>,
Adrian Hunter <adrian.hunter@...el.com>,
Mark Drayton <mbd@...com>,
"Tzvetomir Stoyanov (VMware)" <tz.stoyanov@...il.com>,
linux-kernel@...r.kernel.org, netdev@...r.kernel.org,
bpf@...r.kernel.org, clang-built-linux@...glegroups.com,
Mathieu Poirier <mathieu.poirier@...aro.org>
Cc: Leo Yan <leo.yan@...aro.org>
Subject: [PATCH v4 0/2] perf: arm/arm64: Improve completeness for kernel address space
This patch set is to improve completeness for kernel address space for
arm/arm64; it adds architecture specific tweaking for the kernel start
address, thus can include the memory regions which are prior to '_stext'
symbol. With this change, we can see the eBPF program can be parsed
properly on arm64.
This patch set is a following up version for the old patch "perf cs-etm:
Improve completeness for kernel address space" [1]; the old patch was
only to fix the issue for CoreSight ETM event; but the kernel address space
issue is not only limited to CoreSight event, it should be a common issue
for other events (e.g. PMU events), clock events for profiling eBPF
program. So this patch set tries to resolve it as a common issue for
arm/arm64 archs.
When implemented related code, I tried to use the API
machine__create_extra_kernel_maps(); but I found the 'perf script' tool
directly calls machine__get_kernel_start() instead of running into
the flow for machine__create_extra_kernel_maps(); this is the reason I
don't use machine__create_extra_kernel_maps() for tweaking kernel start
address and refactor machine__get_kernel_start() alternatively.
If there have better method to resolve this issue, any suggestions and
comments are very welcome!
[1] https://lkml.org/lkml/2019/6/19/1057
Leo Yan (2):
perf machine: Support arch's specific kernel start address
perf machine: arm/arm64: Improve completeness for kernel address space
tools/perf/Makefile.config | 22 ++++++++++++++++++++++
tools/perf/arch/arm/util/Build | 2 ++
tools/perf/arch/arm/util/machine.c | 17 +++++++++++++++++
tools/perf/arch/arm64/util/Build | 1 +
tools/perf/arch/arm64/util/machine.c | 17 +++++++++++++++++
tools/perf/arch/x86/util/machine.c | 10 ++++++++++
tools/perf/util/machine.c | 13 +++++++------
tools/perf/util/machine.h | 2 ++
8 files changed, 78 insertions(+), 6 deletions(-)
create mode 100644 tools/perf/arch/arm/util/machine.c
create mode 100644 tools/perf/arch/arm64/util/machine.c
--
2.17.1
Powered by blists - more mailing lists