Re: [PATCH 2/4] tracing/function-graph: x86_64 stack allocationcleanup

From: Frederic Weisbecker
Date: Sun Sep 13 2009 - 13:56:30 EST


On Sun, Sep 13, 2009 at 01:47:27PM -0400, Steven Rostedt wrote:
> On Sun, 2009-09-13 at 19:05 +0200, Frederic Weisbecker wrote:
> > On Sat, Sep 12, 2009 at 11:05:45PM -0400, Steven Rostedt wrote:
> > > From: Jiri Olsa <jolsa@xxxxxxxxxx>
> > >
> > > Only 24 bytes needs to be reserved on the stack for the function graph
> > > tracer on x86_64.
> > >
> > > Signed-off-by: Jiri Olsa <jolsa@xxxxxxxxxx>
> > > LKML-Reference: <20090729085837.GB4998@xxxxxxxxxxxxxxxxxxxxxxxxxxxx>
> > > Signed-off-by: Steven Rostedt <rostedt@xxxxxxxxxxx>
> > > ---
> > > arch/x86/kernel/entry_64.S | 6 +++---
> > > 1 files changed, 3 insertions(+), 3 deletions(-)
> > >
> > > diff --git a/arch/x86/kernel/entry_64.S b/arch/x86/kernel/entry_64.S
> > > index c251be7..d59fe32 100644
> > > --- a/arch/x86/kernel/entry_64.S
> > > +++ b/arch/x86/kernel/entry_64.S
> > > @@ -146,7 +146,7 @@ ENTRY(ftrace_graph_caller)
> > > END(ftrace_graph_caller)
> > >
> > > GLOBAL(return_to_handler)
> > > - subq $80, %rsp
> > > + subq $24, %rsp
> >
> >
> > That's theoretically a good fix.
> >
> > But Steve, do you remember the weird issues we had while only
> > saving the theoretically strict needed stack space here?
> >
> > It made the function graph tracer crashing in x86-64, and we
> > never found out why we needed to save more stack than needed.
> >
> > Sorry that may sound like a FUD message but I can't explain
> > the reason of this, and I fear we may met it again.
> >
> > Well, at least that may help us finding out the real resons of
> > such crashes, but...
>
> I did not forget about them, and that's the reason that I did not apply
> them in the beginning. But that was long ago, and we fixed lots of
> issues. I remember hitting crashes with the patch too, but I've applied
> this and ran it on those same machines and I no longer get those
> crashes. Thus, my thinking is that we already fixed the bug that was
> causing it.
>
> Only way to know for sure is to apply it and let it out into the
> wild ;-)


Ok, fine then :)

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/