Steven Rostedt (VMware)
f7edb451fa
tracing/arm64: Have max stack tracer handle the case of return address after data
...
Most archs (well at least x86) store the function call return address on the
stack before storing the local variables for the function. The max stack
tracer depends on this in its algorithm to display the stack size of each
function it finds in the back trace.
Some archs (arm64), may store the return address (from its link register)
just before calling a nested function. There's no reason to save the link
register on leaf functions, as it wont be updated. This breaks the algorithm
of the max stack tracer.
Add a new define ARCH_FTRACE_SHIFT_STACK_TRACER that an architecture may set
if it stores the return address (link register) after it stores the
function's local variables, and have the stack trace shift the values of the
mapped stack size to the appropriate functions.
Link: 20190802094103.163576-1-jiping.ma2@windriver.com
Reported-by: Jiping Ma <jiping.ma2@windriver.com>
Acked-by: Will Deacon <will@kernel.org>
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
2019-08-31 12:19:40 -04:00
..
blktrace.c
blktrace: no need to check return value of debugfs_create functions
2019-06-03 15:39:39 +02:00
bpf_trace.c
bpf: fix compiler warning with CONFIG_MODULES=n
2019-06-26 14:44:07 +02:00
fgraph.c
tracing: Fix ftrace_graph_get_ret_stack() to use task and not current
2018-12-22 08:21:03 -05:00
ftrace.c
ftrace: Check for successful allocation of hash
2019-08-30 16:49:07 -04:00
ftrace_internal.h
ftrace: Create new ftrace_internal.h header
2018-12-08 20:54:06 -05:00
Kconfig
The main changes in this release include:
2019-07-18 11:51:00 -07:00
Makefile
tracing: Add unified dynamic event framework
2018-12-08 20:54:09 -05:00
power-traces.c
preemptirq_delay_test.c
tracing: Use trace_clock_local() for looping in preemptirq_delay_test.c
2018-10-17 15:35:33 -04:00
ring_buffer.c
ring-buffer: Remove HAVE_64BIT_ALIGNED_ACCESS
2019-05-28 09:36:19 -04:00
ring_buffer_benchmark.c
ring-buffer: Fix mispelling of Calculate
2019-05-08 12:15:12 -04:00
rpm-traces.c
trace.c
tracing/probe: Add immediate string parameter support
2019-08-31 12:19:39 -04:00
trace.h
tracing: Silence GCC 9 array bounds warning
2019-05-25 23:04:30 -04:00
trace_benchmark.c
trace_benchmark.h
tracing: Fix SPDX format headers to use C++ style comments
2018-08-16 19:08:06 -04:00
trace_branch.c
x86/uaccess, ftrace: Fix ftrace_likely_update() vs. SMAP
2019-04-03 11:02:24 +02:00
trace_clock.c
trace_dynevent.c
tracing/dynevent: Pass extra arguments to match operation
2019-08-31 12:19:38 -04:00
trace_dynevent.h
tracing/dynevent: Pass extra arguments to match operation
2019-08-31 12:19:38 -04:00
trace_entries.h
tracing: Change the function format to display function names by perf
2019-02-11 14:53:43 -05:00
trace_event_perf.c
tracing: Pass type into tracing_generic_entry_update()
2019-07-16 15:14:48 -04:00
trace_events.c
tracing: Make exported ftrace_set_clr_event non-static
2019-08-31 06:51:49 -04:00
trace_events_filter.c
The main changes in this release include:
2019-07-18 11:51:00 -07:00
trace_events_filter_test.h
tracing: Fix SPDX format headers to use C++ style comments
2018-08-16 19:08:06 -04:00
trace_events_hist.c
tracing/dynevent: Pass extra arguments to match operation
2019-08-31 12:19:38 -04:00
trace_events_trigger.c
tracing: Add trace_array parameter to create_event_filter()
2019-04-08 09:22:28 -04:00
trace_export.c
trace_functions.c
trace_functions_graph.c
fgraph: Remove redundant ftrace_graph_notrace_addr() test
2019-07-30 21:50:03 -04:00
trace_hwlat.c
sched/core: Provide a pointer to the valid CPU mask
2019-06-03 11:49:37 +02:00
trace_irqsoff.c
The biggest change for this release is in the histogram code.
2019-03-11 17:01:32 -07:00
trace_kdb.c
tracing: Silence GCC 9 array bounds warning
2019-05-25 23:04:30 -04:00
trace_kprobe.c
tracing/probe: Add immediate string parameter support
2019-08-31 12:19:39 -04:00
trace_kprobe_selftest.c
trace_kprobe_selftest.h
tracing: Fix SPDX format headers to use C++ style comments
2018-08-16 19:08:06 -04:00
trace_mmiotrace.c
trace_nop.c
trace_output.c
Eiichi Tsukata found a small bug from the fixup of the stack code
2019-07-19 12:18:46 -07:00
trace_output.h
tracing: Fix SPDX format headers to use C++ style comments
2018-08-16 19:08:06 -04:00
trace_preemptirq.c
kprobes: Prohibit probing on hardirq tracers
2019-02-13 08:16:40 +01:00
trace_printk.c
tracing: Trivia spelling fix containerof() -> container_of()
2018-09-26 12:21:00 +03:00
trace_probe.c
tracing/probe: Add immediate string parameter support
2019-08-31 12:19:39 -04:00
trace_probe.h
tracing/probe: Add immediate string parameter support
2019-08-31 12:19:39 -04:00
trace_probe_tmpl.h
tracing/probe: Support user-space dereference
2019-05-25 23:04:42 -04:00
trace_sched_switch.c
trace_sched_wakeup.c
tracing: Add conditional snapshot
2019-02-20 13:51:06 -05:00
trace_selftest.c
function_graph: Have selftest also emulate tr->reset() as it did with tr->init()
2019-04-21 19:46:56 -04:00
trace_selftest_dynamic.c
trace_seq.c
trace_stack.c
tracing/arm64: Have max stack tracer handle the case of return address after data
2019-08-31 12:19:40 -04:00
trace_stat.c
trace_stat.h
tracing: Fix SPDX format headers to use C++ style comments
2018-08-16 19:08:06 -04:00
trace_syscalls.c
syscalls: Remove start and number from syscall_get_arguments() args
2019-04-05 09:26:43 -04:00
trace_uprobe.c
tracing/probe: Add immediate string parameter support
2019-08-31 12:19:39 -04:00
tracing_map.c
tracing_map.h
tracing: Fix SPDX format headers to use C++ style comments
2018-08-16 19:08:06 -04:00