/linux/tools/perf/ |
H A D | builtin-ftrace.c | 264 static void reset_tracing_options(struct perf_ftrace *ftrace __maybe_unused) in reset_tracing_options() 277 static int reset_tracing_files(struct perf_ftrace *ftrace __maybe_unused) in reset_tracing_files() 298 reset_tracing_options(ftrace); in reset_tracing_files() 302 static int set_tracing_pid(struct perf_ftrace *ftrace) in set_tracing_pid() argument 307 if (target__has_cpu(&ftrace->target)) in set_tracing_pid() 310 for (i = 0; i < perf_thread_map__nr(ftrace->evlist->core.threads); i++) { in set_tracing_pid() 312 perf_thread_map__pid(ftrace->evlist->core.threads, i)); in set_tracing_pid() 344 static int set_tracing_cpu(struct perf_ftrace *ftrace) in set_tracing_cpu() argument 346 struct perf_cpu_map *cpumap = ftrace->evlist->core.user_requested_cpus; in set_tracing_cpu() 348 if (!target__has_cpu(&ftrace->target)) in set_tracing_cpu() [all …]
|
/linux/tools/testing/selftests/ftrace/test.d/direct/ |
H A D | ftrace-direct.tc | 5 rmmod ftrace-direct ||: 6 if ! modprobe ftrace-direct ; then 16 rmmod ftrace-direct 23 modprobe ftrace-direct 24 rmmod ftrace-direct 29 modprobe ftrace-direct 31 rmmod ftrace-direct 34 modprobe ftrace-direct 37 rmmod ftrace-direct 40 modprobe ftrace-direct [all …]
|
H A D | kprobe-direct.tc | 6 rmmod ftrace-direct ||: 7 if ! modprobe ftrace-direct ; then 17 rmmod ftrace-direct 23 modprobe ftrace-direct 29 rmmod ftrace-direct 74 modprobe ftrace-direct-too 78 rmmod ftrace-direct-too
|
/linux/tools/perf/util/ |
H A D | bpf_ftrace.c | 8 #include "util/ftrace.h" 20 int perf_ftrace__latency_prepare_bpf(struct perf_ftrace *ftrace) in perf_ftrace__latency_prepare_bpf() 26 if (!list_is_singular(&ftrace->filters)) { in perf_ftrace__latency_prepare_bpf() 28 list_empty(&ftrace->filters) ? "No" : "Too many"); in perf_ftrace__latency_prepare_bpf() 32 func = list_first_entry(&ftrace->filters, struct filter_entry, list); in perf_ftrace__latency_prepare_bpf() 40 skel->rodata->bucket_range = ftrace->bucket_range; in perf_ftrace__latency_prepare_bpf() 41 skel->rodata->min_latency = ftrace->min_latency; in perf_ftrace__latency_prepare_bpf() 44 if (ftrace->target.cpu_list) { in perf_ftrace__latency_prepare_bpf() 45 ncpus = perf_cpu_map__nr(ftrace->evlist->core.user_requested_cpus); in perf_ftrace__latency_prepare_bpf() 50 if (target__has_task(&ftrace in perf_ftrace__latency_prepare_bpf() 19 perf_ftrace__latency_prepare_bpf(struct perf_ftrace * ftrace) perf_ftrace__latency_prepare_bpf() argument [all...] |
H A D | ftrace.h | 46 int perf_ftrace__latency_prepare_bpf(struct perf_ftrace *ftrace); 47 int perf_ftrace__latency_start_bpf(struct perf_ftrace *ftrace); 48 int perf_ftrace__latency_stop_bpf(struct perf_ftrace *ftrace); 49 int perf_ftrace__latency_read_bpf(struct perf_ftrace *ftrace, 51 int perf_ftrace__latency_cleanup_bpf(struct perf_ftrace *ftrace); 56 perf_ftrace__latency_prepare_bpf(struct perf_ftrace *ftrace __maybe_unused) 62 perf_ftrace__latency_start_bpf(struct perf_ftrace *ftrace __maybe_unused) 68 perf_ftrace__latency_stop_bpf(struct perf_ftrace *ftrace __maybe_unused) 74 perf_ftrace__latency_read_bpf(struct perf_ftrace *ftrace __maybe_unused, in perf_ftrace__latency_read_bpf() 82 perf_ftrace__latency_cleanup_bpf(struct perf_ftrace *ftrace __maybe_unuse [all...] |
/linux/Documentation/trace/ |
H A D | boottime-trace.rst | 13 device initialization with full features of ftrace including per-event 23 boot config file [1]_. All options are under "ftrace." or "kernel." 40 Dump ftrace on Oops. If MODE = 1 or omitted, dump trace buffer 59 These options can be used for each instance including global ftrace node. 61 ftrace.[instance.INSTANCE.]options = OPT1[, OPT2[...]] 62 Enable given ftrace options. 64 ftrace.[instance.INSTANCE.]tracing_on = 0|1 68 ftrace.[instance.INSTANCE.]trace_clock = CLOCK 69 Set given CLOCK to ftrace's trace_clock. 71 ftrace.[instance.INSTANCE.]buffer_size = SIZE [all …]
|
H A D | ftrace-uses.rst | 2 Using ftrace to hook to functions 15 The ftrace infrastructure was originally created to attach callbacks to the 19 how to use ftrace to implement your own function callbacks. 22 The ftrace context 41 is used to tell ftrace what function should be called as the callback 43 ftrace to handle. 46 an ftrace_ops with ftrace: 68 #include <linux/ftrace.h> 108 at the start of the function where ftrace was tracing. Otherwise it 164 The ftrace FLAGS [all …]
|
/linux/samples/ftrace/ |
H A D | Makefile | 3 obj-$(CONFIG_SAMPLE_FTRACE_DIRECT) += ftrace-direct.o 4 obj-$(CONFIG_SAMPLE_FTRACE_DIRECT) += ftrace-direct-too.o 5 obj-$(CONFIG_SAMPLE_FTRACE_DIRECT) += ftrace-direct-modify.o 6 obj-$(CONFIG_SAMPLE_FTRACE_DIRECT_MULTI) += ftrace-direct-multi.o 7 obj-$(CONFIG_SAMPLE_FTRACE_DIRECT_MULTI) += ftrace-direct-multi-modify.o 8 obj-$(CONFIG_SAMPLE_FTRACE_OPS) += ftrace-ops.o
|
/linux/tools/testing/ktest/examples/bootconfigs/ |
H A D | boottrace.bconf | 1 ftrace.event { 33 ftrace.instance { 36 ftrace.filters = "user_*" 45 ftrace.filters = "kernel_*" 51 ftrace.alloc_snapshot 57 ftrace = function
|
/linux/tools/perf/Documentation/ |
H A D | perf-ftrace.txt | 1 perf-ftrace(1) 6 perf-ftrace - simple wrapper for kernel's ftrace functionality 12 'perf ftrace' {trace|latency|profile} <command> 16 The 'perf ftrace' command provides a collection of subcommands which use 17 kernel's ftrace infrastructure. 19 'perf ftrace trace' is a simple wrapper of the ftrace. It only supports 23 'perf ftrace latency' calculates execution latency of a given function 26 'perf ftrace profil [all...] |
/linux/samples/ |
H A D | Makefile | 27 obj-$(CONFIG_SAMPLE_FTRACE_DIRECT) += ftrace/ 28 obj-$(CONFIG_SAMPLE_FTRACE_DIRECT_MULTI) += ftrace/ 29 obj-$(CONFIG_SAMPLE_FTRACE_OPS) += ftrace/ 30 obj-$(CONFIG_SAMPLE_TRACE_ARRAY) += ftrace/
|
/linux/tools/testing/selftests/ftrace/test.d/trigger/ |
H A D | trigger-trace-marker-synthetic.tc | 15 echo 'hist:keys=common_pid:ts0=common_timestamp.usecs if buf == "start"' > events/ftrace/print/trig… 16 …tamp.usecs-$ts0:onmatch(ftrace.print).latency($lat) if buf == "end"' >> events/ftrace/print/trigger 21 cnt=`grep 'hitcount: *1$' events/ftrace/print/hist | wc -l`
|
H A D | trigger-trace-marker-hist.tc | 14 echo 'hist:keys=common_pid' > events/ftrace/print/trigger 16 grep 'hitcount: *10$' events/ftrace/print/hist > /dev/null || \
|
H A D | trigger-trace-marker-synthetic-kernel.tc | 16 …ommon_timestamp.usecs-$ts0:onmatch(sched.sched_waking).latency($lat)' > events/ftrace/print/trigger 21 grep 'hitcount: *1$' events/ftrace/print/hist > /dev/null || \
|
/linux/arch/sh/kernel/ |
H A D | Makefile | 42 obj-$(CONFIG_DYNAMIC_FTRACE) += ftrace.o 43 obj-$(CONFIG_FTRACE_SYSCALLS) += ftrace.o 44 obj-$(CONFIG_FUNCTION_GRAPH_TRACER) += ftrace.o
|
/linux/tools/testing/selftests/rcutorture/bin/ |
H A D | parse-console.sh | 188 extract_ftrace_from_console $file > $file.ftrace 189 if [ ! -s $file.ftrace ]; then 190 rm -f $file.ftrace
|
/linux/Documentation/features/debug/kprobes-on-ftrace/ |
H A D | arch-support.txt | 2 # Feature name: kprobes-on-ftrace 4 # description: arch supports combined kprobes and ftrace live patching
|
/linux/Documentation/livepatch/ |
H A D | livepatch.rst | 43 Most of these problems are solved by using the dynamic ftrace framework as 44 a base. A Kprobe is registered as a ftrace handler when the function entry 46 a live patch is called with the help of a custom ftrace handler. But there are 327 ftrace handler is registered\ [#]_. This stage is indicated by a value of '1' 336 Note that functions might be patched multiple times. The ftrace handler 339 The right implementation is selected by the ftrace handler, see 356 the ftrace handler is unregistered and the struct klp_ops is 378 patch are removed from the corresponding struct klp_ops. The ftrace handler 415 Livepatch is based on the dynamic ftrace. In particular, functions 416 implementing ftrace or the livepatch ftrace handler could not be [all …]
|
/linux/tools/power/pm-graph/config/ |
H A D | freeze.cfg | 25 # output folder for html, ftrace, and dmesg. Use {date} and {time} for current values 33 # add the dmesg and ftrace log to the html output (default: false) 76 # gather detailed ftrace callgraph data on all timeline events (default: false)
|
H A D | standby.cfg | 25 # output folder for html, ftrace, and dmesg. Use {date} and {time} for current values 33 # add the dmesg and ftrace log to the html output (default: false) 76 # gather detailed ftrace callgraph data on all timeline events (default: false)
|
H A D | standby-callgraph.cfg | 26 # output folder for html, ftrace, and dmesg. Use {date} and {time} for current values 34 # add the dmesg and ftrace log to the html output (default: false) 77 # gather detailed ftrace callgraph data on all timeline events (default: false)
|
/linux/tools/bootconfig/scripts/ |
H A D | bconf2ftrace.sh | 66 . `dirname $0`/ftrace.sh 258 set_array_of ${instance}.ftrace.filters \ 260 set_array_of ${instance}.ftrace.notrace \
|
/linux/arch/powerpc/kernel/ |
H A D | Makefile | 140 obj-$(CONFIG_KPROBES_ON_FTRACE) += kprobes-ftrace.o 187 GCOV_PROFILE_kprobes-ftrace.o := n 188 KCOV_INSTRUMENT_kprobes-ftrace.o := n 189 KCSAN_SANITIZE_kprobes-ftrace.o := n 190 UBSAN_SANITIZE_kprobes-ftrace.o := n
|
/linux/tools/power/pm-graph/ |
H A D | README | 52 and will capture dmesg and ftrace data. This data is transformed into a set of 106 patch must be applied to enable ftrace data: 141 files in subdirectory: suspend-mmddyy-HHMMSS. The ftrace file can 146 raw ftrace output: <hostname>_<mode>_ftrace.txt 269 dmesg and ftrace logs. This will require a significant amount of time if 284 Each test subfolder contains the dmesg/ftrace logs and/or the html timeline 361 # Add Logs: add the dmesg and ftrace log to the html output (def: false) 391 # Callgraph: gather ftrace callgraph data on all timeline events (def: false) 547 to set them in ftrace. It will then print out success or fail for you. 559 is ftrace supported: YES [all …]
|
/linux/tools/testing/selftests/ftrace/ |
H A D | README | 3 This is a collection of testcases for ftrace tracing feature in the Linux 4 kernel. Since ftrace exports interfaces via the debugfs, we just need 7 Running the ftrace testcases
|