Re: [PATCH v2]: perf/x86: expose user space frame-pointer value on a sample
From: Jiri Olsa
Date: Fri Apr 13 2018 - 08:43:22 EST
On Tue, Apr 10, 2018 at 06:40:04PM +0300, Alexey Budankov wrote:
SNIP
> Signed-off-by: Alexey Budankov <alexey.budankov@xxxxxxxxxxxxxxx>
> ---
> Changes in v2:
> - lifted restriction on frame pointer architecture so it's value is provided
> as for i386 as for x86_64 processes
>
> MAINTAINERS file lacks references to appropriate folks for reviewing
> changes at arch/x86/kernel/perf_regs.c so probably it makes sense to
> update the file as well in this respect.
> ---
> arch/x86/kernel/perf_regs.c | 8 +++++++-
> 1 file changed, 7 insertions(+), 1 deletion(-)
>
> diff --git a/arch/x86/kernel/perf_regs.c b/arch/x86/kernel/perf_regs.c
> index e47b2dbbdef3..8d68658eff7f 100644
> --- a/arch/x86/kernel/perf_regs.c
> +++ b/arch/x86/kernel/perf_regs.c
> @@ -156,7 +156,13 @@ void perf_get_regs_user(struct perf_regs *regs_user,
> * Most system calls don't save these registers, don't report them.
> */
> regs_user_copy->bx = -1;
> - regs_user_copy->bp = -1;
> + /*
> + * Store user space frame-pointer value on sample
> + * to facilitate stack unwinding for cases when
> + * user space executable code has such support
> + * enabled at compile time;
> + */
> + regs_user_copy->bp = user_regs->bp;
> regs_user_copy->r12 = -1;
> regs_user_copy->r13 = -1;
> regs_user_copy->r14 = -1;
looks ok to me
thanks,
jirka