linux/kernel/trace
Masami Hiramatsu 54ecbe6f1e rethook: Add a generic return hook
Add a return hook framework which hooks the function return. Most of the
logic came from the kretprobe, but this is independent from kretprobe.

Note that this is expected to be used with other function entry hooking
feature, like ftrace, fprobe, adn kprobes. Eventually this will replace
the kretprobe (e.g. kprobe + rethook = kretprobe), but at this moment,
this is just an additional hook.

Signed-off-by: Masami Hiramatsu <mhiramat@kernel.org>
Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
Tested-by: Steven Rostedt (Google) <rostedt@goodmis.org>
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Link: https://lore.kernel.org/bpf/164735285066.1084943.9259661137330166643.stgit@devnote2
2022-03-17 20:16:29 -07:00
..
blktrace.c blktrace: switch trace spinlock to a raw spinlock 2021-12-20 13:50:14 -07:00
bpf_trace.c bpf: Add bpf_copy_from_user_task() helper 2022-01-24 19:59:27 -08:00
bpf_trace.h
error_report-traces.c
fgraph.c x86/ftrace: Make function graph use ftrace directly 2021-10-20 23:44:43 -04:00
fprobe.c fprobe: Add ftrace based probe APIs 2022-03-17 20:16:15 -07:00
ftrace_internal.h
ftrace.c ftrace: Add ftrace_set_filter_ips function 2022-03-17 20:15:17 -07:00
Kconfig rethook: Add a generic return hook 2022-03-17 20:16:29 -07:00
kprobe_event_gen_test.c
Makefile rethook: Add a generic return hook 2022-03-17 20:16:29 -07:00
pid_list.c tracing: Initialize upper and lower vars in pid_list_refill_irq() 2021-10-07 09:56:38 -04:00
pid_list.h tracing: Create a sparse bitmask for pid filtering 2021-10-05 17:38:45 -04:00
power-traces.c
preemptirq_delay_test.c
rethook.c rethook: Add a generic return hook 2022-03-17 20:16:29 -07:00
ring_buffer_benchmark.c
ring_buffer.c ring-buffer: make use of the helper function kthread_run_on_cpu() 2022-01-15 16:30:23 +02:00
rpm-traces.c
synth_event_gen_test.c
trace_benchmark.c
trace_benchmark.h
trace_boot.c tracing: Fix missing trace_boot_init_histograms kstrdup NULL checks 2021-10-26 09:18:10 -04:00
trace_branch.c
trace_clock.c
trace_dynevent.c tracing: Disable "other" permission bits in the tracefs files 2021-10-08 18:08:43 -04:00
trace_dynevent.h
trace_entries.h
trace_eprobe.c eprobes: Remove redundant event type information 2022-02-25 12:07:01 -05:00
trace_event_perf.c tracing: Show size of requested perf buffer 2021-10-27 12:25:09 -04:00
trace_events_filter_test.h
trace_events_filter.c tracing: Add ustring operation to filtering string pointers 2022-01-14 03:42:24 -05:00
trace_events_hist.c tracing: Propagate is_signed to expression 2022-01-27 19:15:49 -05:00
trace_events_inject.c tracing: Support __rel_loc relative dynamic data location attribute 2021-12-06 15:37:21 -05:00
trace_events_synth.c Tracing updates for 5.17: 2022-01-16 10:15:32 +02:00
trace_events_trigger.c tracing: Uninline trace_trigger_soft_disabled() partly 2022-02-25 12:07:01 -05:00
trace_events.c tracing: Remove duplicate warnings when calling trace_create_file() 2022-01-13 17:02:42 -05:00
trace_export.c
trace_functions_graph.c tracing: in_irq() cleanup 2021-10-13 18:19:41 -04:00
trace_functions.c ftrace: disable preemption when recursion locked 2021-10-27 11:21:49 -04:00
trace_hwlat.c trace/hwlat: make use of the helper function kthread_run_on_cpu() 2022-01-15 16:30:24 +02:00
trace_irqsoff.c
trace_kdb.c
trace_kprobe_selftest.c
trace_kprobe_selftest.h
trace_kprobe.c Tracing updates for 5.17: 2022-01-16 10:15:32 +02:00
trace_mmiotrace.c
trace_nop.c
trace_osnoise.c tracing/osnoise: Make osnoise_main to sleep for microseconds 2022-02-25 12:07:01 -05:00
trace_output.c tracing: Account bottom half disabled sections. 2022-01-13 16:23:04 -05:00
trace_output.h
trace_preemptirq.c
trace_printk.c tracing: Disable "other" permission bits in the tracefs files 2021-10-08 18:08:43 -04:00
trace_probe_tmpl.h
trace_probe.c eprobes: Remove redundant event type information 2022-02-25 12:07:01 -05:00
trace_probe.h eprobes: Remove redundant event type information 2022-02-25 12:07:01 -05:00
trace_recursion_record.c tracing: Disable "other" permission bits in the tracefs files 2021-10-08 18:08:43 -04:00
trace_sched_switch.c
trace_sched_wakeup.c
trace_selftest_dynamic.c
trace_selftest.c tracing: Fix selftest config check for function graph start up test 2022-02-25 21:05:29 -05:00
trace_seq.c
trace_stack.c tracing: Disable "other" permission bits in the tracefs files 2021-10-08 18:08:43 -04:00
trace_stat.c tracing: Disable "other" permission bits in the tracefs files 2021-10-08 18:08:43 -04:00
trace_stat.h
trace_synth.h
trace_syscalls.c tracing: Have syscall trace events use trace_event_buffer_lock_reserve() 2022-01-13 16:23:05 -05:00
trace_uprobe.c Tracing updates for 5.17: 2022-01-16 10:15:32 +02:00
trace.c tracing: Ensure trace buffer is at least 4096 bytes large 2022-02-25 12:07:01 -05:00
trace.h eprobes: Remove redundant event type information 2022-02-25 12:07:01 -05:00
tracing_map.c tracing: Fix a kmemleak false positive in tracing_map 2021-12-01 21:04:34 -05:00
tracing_map.h