Re: [RFC PATCH] ftrace: Fix depth filtering when func_stack is enabled.

From: Steven Rostedt
Date: Mon Jan 22 2018 - 18:16:58 EST


On Mon, 22 Jan 2018 15:50:04 +0200
Nikolay Borisov <nborisov@xxxxxxxx> wrote:


> diff --git a/kernel/trace/trace_functions.c b/kernel/trace/trace_functions.c
> index 27f7ad12c4b1..b721f1f3f3c0 100644
> --- a/kernel/trace/trace_functions.c
> +++ b/kernel/trace/trace_functions.c
> @@ -181,14 +181,11 @@ function_stack_trace_call(unsigned long ip, unsigned long parent_ip,
> pc = preempt_count();
> trace_function(tr, ip, parent_ip, flags, pc);
> /*
> - * skip over 5 funcs:
> - * __ftrace_trace_stack,
> - * __trace_stack,
> + * skip over 2 funcs:
> * function_stack_trace_call
> - * ftrace_list_func

Thanks, but this breaks when you are not using ORC unwinder.

> * ftrace_call
> */
> - __trace_stack(tr, flags, 5, pc);
> + __trace_stack(tr, flags, 2, pc);
> }
>
> atomic_dec(&data->disabled);


There's a bit of ORC unwinder breakage that I'm still dealing with. I
also have patches to handle the differences between ORC and FP, in the
__trace_stack() usages. I'm hoping to have this all fixed by tomorrow,
as I'll be traveling after that.

Thanks!

-- Steve