Messages in this thread | | | From | Leo Yan <> | Subject | [PATCH v4 0/2] perf: arm/arm64: Improve completeness for kernel address space | Date | Sat, 10 Aug 2019 15:21:33 +0800 |
| |
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
| |