Messages in this thread | | | Date | Tue, 2 Aug 2016 22:12:33 -0500 | From | Josh Poimboeuf <> | Subject | Re: [PATCH 05/19] x86/dumpstack: fix function graph tracing stack dump reliability issues |
| |
On Tue, Aug 02, 2016 at 10:59:36PM -0400, Steven Rostedt wrote: > On Tue, 2 Aug 2016 21:50:12 -0500 > Josh Poimboeuf <jpoimboe@redhat.com> wrote: > > > > diff --git a/include/linux/ftrace.h b/include/linux/ftrace.h > > index 1e814ae..fc508a7 100644 > > --- a/include/linux/ftrace.h > > +++ b/include/linux/ftrace.h > > @@ -795,7 +795,9 @@ struct ftrace_ret_stack { > > unsigned long func; > > unsigned long long calltime; > > unsigned long long subtime; > > +#if defined(CONFIG_HAVE_FUNCTION_GRAPH_FP_TEST) && !defined(CC_USING_FENTRY) > > We need to make a new defined in ftrace.h: > > #if defined(CONFIG_HAVE_FUNCTION_GRAPH_FP_TEST) && !defined(CC_USING_FENTRY) > # define HAVE_FUNCTION_GRAPH_FP_TEST > #endif > > And use that instead of this && complexity. > > Or better yet, get rid of the CONFIG_HAVE_FUNCTION_GRAPH_FP_TEST define > and only have HAVE_FUNCTION_GRAPH_FP_TEST defined in the asm/ftrace.h > in each arch. Then, x86 could just do; > > #ifndef CC_USING_FENTRY > # define HAVE_FUNCTION_GRAPH_FP_TEST > #endif
Sounds good. I was thinking I could also add a similar define to indicate whether an arch passes the return address stack pointer to ftrace_push_return_trace(). HAVE_FUNCTION_GRAPH_RET_ADDR_PTR?
-- Josh
| |