Commit a3db31ff authored by Naveen N. Rao's avatar Naveen N. Rao Committed by Michael Ellerman

ftrace: Look up the address of return_to_handler() using helpers

This ensures that we use the right address on architectures that use
function descriptors.
Signed-off-by: default avatarNaveen N. Rao <naveen.n.rao@linux.vnet.ibm.com>
Acked-by: default avatarSteven Rostedt (VMware) <rostedt@goodmis.org>
Signed-off-by: default avatarMichael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/8f6f14d192a994008ac370ce14036bbe67224c7d.1567707399.git.naveen.n.rao@linux.vnet.ibm.com
parent e7ca44ed
...@@ -276,7 +276,7 @@ unsigned long ftrace_graph_ret_addr(struct task_struct *task, int *idx, ...@@ -276,7 +276,7 @@ unsigned long ftrace_graph_ret_addr(struct task_struct *task, int *idx,
int index = task->curr_ret_stack; int index = task->curr_ret_stack;
int i; int i;
if (ret != (unsigned long)return_to_handler) if (ret != (unsigned long)dereference_kernel_function_descriptor(return_to_handler))
return ret; return ret;
if (index < 0) if (index < 0)
...@@ -294,7 +294,7 @@ unsigned long ftrace_graph_ret_addr(struct task_struct *task, int *idx, ...@@ -294,7 +294,7 @@ unsigned long ftrace_graph_ret_addr(struct task_struct *task, int *idx,
{ {
int task_idx; int task_idx;
if (ret != (unsigned long)return_to_handler) if (ret != (unsigned long)dereference_kernel_function_descriptor(return_to_handler))
return ret; return ret;
task_idx = task->curr_ret_stack; task_idx = task->curr_ret_stack;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment