Messages in this thread | | | Date | Tue, 17 Nov 2015 08:44:40 +0900 | From | Namhyung Kim <> | Subject | Re: [PATCH] ftrace/x86: Fix missing ops arg on static function tracing |
| |
Hi Steve,
On Mon, Nov 16, 2015 at 10:54:53AM -0500, Steven Rostedt wrote: > On Sat, 14 Nov 2015 18:32:28 +0900 > Namhyung Kim <namhyung@kernel.org> wrote: > > > The commit f1ab00af816e ("ftrace/x86: Get rid of ftrace_caller_setup") > > moved code that loads ftrace_ops into 3rd parameter but it missed to do > > for static tracing. > > > > Signed-off-by: Namhyung Kim <namhyung@kernel.org> > > --- > > arch/x86/kernel/mcount_64.S | 3 +++ > > 1 file changed, 3 insertions(+) > > > > diff --git a/arch/x86/kernel/mcount_64.S b/arch/x86/kernel/mcount_64.S > > index 94ea120fa21f..6c1ccf9e5427 100644 > > --- a/arch/x86/kernel/mcount_64.S > > +++ b/arch/x86/kernel/mcount_64.S > > @@ -278,6 +278,9 @@ trace: > > /* save_mcount_regs fills in first two parameters */ > > save_mcount_regs > > > > + /* Load the ftrace_ops into the 3rd parameter */ > > + movq function_trace_op(%rip), %rdx > > + > > call *ftrace_trace_function > > This isn't needed, nor will the parameter be used if added. A comment > should probably be added here instead. > > /* > * When DYNAMIC_FTRACE is not defined, ARCH_SUPPORTS_FTRACE_OPS is not > * set (see include/asm/ftrace.h). Only the ip and parent ip are used > * and the list function is called when function tracing is enabled. > */
Ah, ok.
I sent this patch during reading update_ftrace_function(). I was wondering why function_trace_op is set but not passed to the trace function. It seems that the ops is not needed for x86 but s390 still needs it regardless of DYNAMIC_FTRACE.
I'll send a patch with the above comment.
Thanks, Namhyung
| |