Re: [PATCH v2]: perf/x86: store user space frame-pointer value on a sample

From: Alexey Budankov
Date: Mon May 21 2018 - 07:49:57 EST


Hi Peter,

On 10.05.2018 13:14, Peter Zijlstra wrote:
> On Thu, May 10, 2018 at 12:42:38PM +0300, Alexey Budankov wrote:
>>> The Changelog needs to state that user_regs->bp is in fact valid and
>>
>> That actually was tested on binaries compiled without and with BP exposed
>> and in the latter case proved the value of that change.
>
> Mostly works is not the same as 'always initialized', if there are entry
> paths that do not store that register, then using the value might leak
> values from the kernel stack, which would be bad.
>
> But like said, I think much of the kernel entry code was sanitized with
> the PTI effort and I suspect things are in fact fine now, but lets wait
> for Andy to confirm.

It looks like, these days, all registers are saved on system calls, just
like you anticipated.

So BP register value might be stored into the Perf trace on a sample.

Andy?

Thanks,
Alexey

>