[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20150519165202.GA21251@e104818-lin.cambridge.arm.com>
Date: Tue, 19 May 2015 17:52:03 +0100
From: Catalin Marinas <catalin.marinas@....com>
To: Hou Pengyang <houpengyang@...wei.com>
Cc: will.deacon@....com, wangnan0@...wei.com, a.p.zijlstra@...llo.nl,
linux-kernel@...r.kernel.org, acme@...nel.org, mingo@...hat.com,
paulus@...ba.org, linux-arm-kernel@...ts.infradead.org
Subject: Re: [PATCH v5] arm64: perf: Fix callchain parse error with kernel
tracepoint events
On Sun, May 10, 2015 at 11:07:40AM +0000, Hou Pengyang wrote:
> For ARM64, when tracing with tracepoint events, the IP and pstate are set
> to 0, preventing the perf code parsing the callchain and resolving the
> symbols correctly.
>
> ./perf record -e sched:sched_switch -g --call-graph dwarf ls
> [ perf record: Captured and wrote 0.146 MB perf.data ]
> ./perf report -f
> Samples: 194 of event 'sched:sched_switch', Event count (approx.): 194
> Children Self Command Shared Object Symbol
> 100.00% 100.00% ls [unknown] [.] 0000000000000000
>
> The fix is to implement perf_arch_fetch_caller_regs for ARM64, which fills
> several necessary registers used for callchain unwinding, including pc,sp,
> fp and spsr .
>
> With this patch, callchain can be parsed correctly as follows:
>
> ......
> + 2.63% 0.00% ls [kernel.kallsyms] [k] vfs_symlink
> + 2.63% 0.00% ls [kernel.kallsyms] [k] follow_down
> + 2.63% 0.00% ls [kernel.kallsyms] [k] pfkey_get
> + 2.63% 0.00% ls [kernel.kallsyms] [k] do_execveat_common.isra.33
> - 2.63% 0.00% ls [kernel.kallsyms] [k] pfkey_send_policy_notify
> pfkey_send_policy_notify
> pfkey_get
> v9fs_vfs_rename
> page_follow_link_light
> link_path_walk
> el0_svc_naked
> .......
>
> Signed-off-by: Hou Pengyang <houpengyang@...wei.com>
> Acked-by: Will Deacon <will.deacon@....com>
Queued for 4.2. Thanks.
--
Catalin
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists