On Thu, 22 Nov 2018 11:03:22 +0100 Peter Zijlstra <peterz@xxxxxxxxxxxxx> wrote: > On Wed, Nov 21, 2018 at 07:28:16PM -0500, Steven Rostedt wrote: > > @@ -188,14 +186,20 @@ int function_graph_enter(unsigned long ret, unsigned long func, > > struct ftrace_graph_ent trace; > > > > trace.func = func; > > - trace.depth = current->curr_ret_stack + 1; > > + trace.depth = ++current->curr_ret_depth; > > > > /* Only trace if the calling function expects to */ > > if (!ftrace_graph_entry(&trace)) > > - return -EBUSY; > > + goto out; > > > > - return ftrace_push_return_trace(ret, func, &trace.depth, > > - frame_pointer, retp); > > + if (ftrace_push_return_trace(ret, func, > > + frame_pointer, retp)) > > You can unwrap that line, by my counting that's at 69 chars, so unless > you're editing on a C64 it should fit your screen. Thanks I may add a clean up patch. I already ran this code under several hours of testing, and only plan on touching it if there's more than cosmetic issues. The reason that looks like that is because I just massaged the line it replaced, and didn't take into account that I could now make it into a single line. > > > + goto out; > > + > > + return 0; > > + out: > > + current->curr_ret_depth--; > > + return -EBUSY; > > } > > [diff "default"] > xfuncname = "^[[:alpha:]$_].*[^:]$" > > avoids the need for that ludicrous label indenting. I still prefer the 'space', and it fits with the rest of the file ;-) TomAYto / TomAHto > > Also, "error" might be a better label name. True. I'll add that on top too, but for the stable/rc release, that isn't needed. Thanks for taking a look at this code. -- Steve