lkml.org 
[lkml]   [2019]   [Nov]   [5]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    Date
    SubjectRe: [PATCH v4 11/17] arm64: disable function graph tracing with SCS
    On Tue, Nov 5, 2019 at 11:55 AM Mark Rutland <mark.rutland@arm.com> wrote:
    > On Mon, Nov 04, 2019 at 03:44:39PM -0800, Sami Tolvanen wrote:
    > > Sure, I'll add a better description in v5. In this case, the return
    > > address is modified in the kernel stack, which means the changes are
    > > ignored with SCS.
    >
    > Ok, that makes sense to me. I'd suggest something like:
    >
    > | The graph tracer hooks returns by modifying frame records on the
    > | (regular) stack, but with SCS the return address is taken from the
    > | shadow stack, and the value in the frame record has no effect. As we
    > | don't currently have a mechanism to determine the corresponding slot
    > | on the shadow stack (and to pass this through the ftrace
    > | infrastructure), for now let's disable the graph tracer when SCS is
    > | enabled.
    >
    > ... as I suspect with some rework of the trampoline and common ftrace
    > code we'd be able to correctly manipulate the shadow stack for this.
    > Similarly, if clang gained -fpatchable-funciton-etnry, we'd get that for
    > free.

    That sounds good to me. Thanks, Mark.

    Sami

    \
     
     \ /
      Last update: 2019-11-05 23:06    [W:4.437 / U:0.152 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site