Re: [PATCH] ftrace: Allow WITH_ARGS flavour of graph tracer with shadow call stack

From: Steven Rostedt
Date: Fri Dec 09 2022 - 16:51:50 EST


On Fri, 9 Dec 2022 14:40:25 +0000
Mark Rutland <mark.rutland@xxxxxxx> wrote:

> On Fri, Dec 09, 2022 at 03:34:02PM +0100, Ard Biesheuvel wrote:
> > The recent switch on arm64 from DYNAMIC_FTRACE_WITH_REGS to
> > DYNAMIC_FTRACE_WITH_ARGS failed to take into account that we currently
> > require the former in order to allow the function graph tracer to be
> > enabled in combination with shadow call stacks. This means that this is
> > no longer permitted at all, in spite of the fact that either flavour of
> > ftrace works perfectly fine in this combination.
> >
> > Given that arm64 is the only arch that implements shadow call stacks in
> > the first place, let's update the condition to just reflect the arm64
> > change. When other architectures adopt shadow call stack support, this
> > can be revisited if needed.
> >
> > Signed-off-by: Ard Biesheuvel <ardb@xxxxxxxxxx>
>
> My bad; sorry about this, and thanks for the fix!
>
> Acked-by: Mark Rutland <mark.rutland@xxxxxxx>
>
> We should probably also add:
>
> Fixes: 26299b3f6ba26bfc ("ftrace: arm64: move from REGS to ARGS")

Actually, I believe it is:

Fixes: ddc9863e9e90 ("scs: Disable when function graph tracing is enabled")

As according to the comments, scs is broken with function graph unless
function graph is using the ftrace mechanism. And that is only true if
WITH_ARGS is set, not REGS.

Acked-by: Steven Rostedt (Google) <rostedt@xxxxxxxxxxx>

-- Steve