]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/commit
function_graph: Have profiler use curr_ret_stack and not depth
authorSteven Rostedt (VMware) <rostedt@goodmis.org>
Tue, 20 Nov 2018 17:51:07 +0000 (12:51 -0500)
committerSultan Alsawaf <sultan.alsawaf@canonical.com>
Wed, 24 Jul 2019 15:45:00 +0000 (09:45 -0600)
commitead4a241e25fb0b336f2127f75c65c36aa2b81ac
treeab5d6dbc1f8cd18c9ad1616738ddcbe0c91fe9ca
parent01c8a15895b55e6b8c7d52f4089473359950febe
function_graph: Have profiler use curr_ret_stack and not depth

BugLink: https://bugs.launchpad.net/bugs/1836968
commit b1b35f2e218a5b57d03bbc3b0667d5064570dc60 upstream.

The profiler uses trace->depth to find its entry on the ret_stack, but the
depth may not match the actual location of where its entry is (if an
interrupt were to preempt the processing of the profiler for another
function, the depth and the curr_ret_stack will be different).

Have it use the curr_ret_stack as the index to find its ret_stack entry
instead of using the depth variable, as that is no longer guaranteed to be
the same.

Cc: stable@kernel.org
Fixes: 03274a3ffb449 ("tracing/fgraph: Adjust fgraph depth before calling trace return callback")
Reviewed-by: Masami Hiramatsu <mhiramat@kernel.org>
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Kamal Mostafa <kamal@canonical.com>
Signed-off-by: Khalid Elmously <khalid.elmously@canonical.com>
kernel/trace/ftrace.c