/linux-6.14.4/Documentation/trace/ |
D | boottime-trace.rst | 1 .. SPDX-License-Identifier: GPL-2.0 4 Boot-time tracing 12 Boot-time tracing allows users to trace boot-time process including 13 device initialization with full features of ftrace including per-event 14 filter and actions, histograms, kprobe-events and synthetic-events, 23 boot config file [1]_. All options are under "ftrace." or "kernel." 27 .. [1] See :ref:`Documentation/admin-guide/bootconfig.rst <bootconfig>` 28 .. [2] See :ref:`Documentation/admin-guide/kernel-parameters.rst <kernelparameters>` 30 Ftrace Global Options 31 --------------------- [all …]
|
D | fprobe.rst | 1 .. SPDX-License-Identifier: GPL-2.0 4 Fprobe - Function entry/exit probe 12 Fprobe is a function entry/exit probe based on the function-graph tracing 13 feature in ftrace. 23 The fprobe is a wrapper of ftrace (+ kretprobe-like return callback) to 30 .. code-block:: c 41 The register_fprobe() enables a fprobe by function-name filters. 46 The register_fprobe_ips() enables a fprobe by ftrace-location addresses. 49 .. code-block:: c 58 .. code-block:: c [all …]
|
D | ftrace-design.rst | 12 ------------ 20 ftrace.txt file. 23 their kernel should make it all the way to dynamic ftrace support. 27 ------------- 29 Ftrace relies on these features being implemented: 30 - STACKTRACE_SUPPORT - implement save_stack_trace() 31 - TRACE_IRQFLAGS_SUPPORT - implement include/asm/irqflags.h 35 -------------------- 43 $ echo 'main(){}' | gcc -x c -S -o - - -pg | grep mcount 56 be (semi-)relevant. [all …]
|
D | ftrace.rst | 2 ftrace - Function Tracer 13 - Written for: 2.6.28-rc2 14 - Updated for: 3.10 15 - Updated for: 4.13 - Copyright 2017 VMware Inc. Steven Rostedt 16 - Converted to rst format - Changbin Du <[email protected]> 19 ------------ 21 Ftrace is an internal tracer designed to help out developers and 24 performance issues that take place outside of user-space. 26 Although ftrace is typically considered the function tracer, it 32 One of the most common uses of ftrace is the event tracing. [all …]
|
D | user_events.rst | 2 user_events: User-based Event Tracing 8 -------- 10 that can be viewed via existing tools, such as ftrace and perf. 20 requires CAP_PERFMON due to the event persisting, otherwise -EPERM is returned. 23 tools that can read trace_events (such as ftrace and perf). The registration 36 ----------- 44 /* Input: Size of the user_reg structure being used */ 45 __u32 size; 50 /* Input: Enable size in bytes at address */ 68 + size: This must be set to sizeof(struct user_reg). [all …]
|
/linux-6.14.4/tools/perf/ |
D | builtin-ftrace.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * builtin-ftrace.c 25 #include <subcmd/parse-options.h> 36 #include "util/ftrace.h" 39 #include "util/parse-sublevel-options.h" 64 workload_exec_errno = info->si_value.sival_int; in ftrace__workload_exec_failed_signal() 78 pr_err("ftrace only works for %s!\n", in check_ftrace_capable() 106 int fd, ret = -1; in __write_tracing_file() 107 ssize_t size = strlen(val); in __write_tracing_file() local 115 return -1; in __write_tracing_file() [all …]
|
/linux-6.14.4/tools/perf/Documentation/ |
D | perf-ftrace.txt | 1 perf-ftrace(1) 5 ---- 6 perf-ftrace - simple wrapper for kernel's ftrace functionality 10 -------- 12 'perf ftrace' {trace|latency|profile} <command> 15 ----------- 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 [all …]
|
/linux-6.14.4/tools/bootconfig/scripts/ |
D | bconf2ftrace.sh | 2 # SPDX-License-Identifier: GPL-2.0-only 5 echo "Ftrace boottime trace test tool" 6 echo "Usage: $0 [--apply|--init] [--debug] BOOTCONFIG-FILE" 7 echo " --apply: Test actual apply to tracefs (need sudo)" 8 echo " --init: Initialize ftrace before applying (imply --apply)" 12 [ $# -eq 0 ] && usage 20 "--debug") 22 "--apply") 24 "--init") 28 [ ! -f $1 ] && usage [all …]
|
/linux-6.14.4/tools/power/pm-graph/ |
D | sleepgraph.8 | 3 sleepgraph \- Suspend/Resume timing analysis 13 suspend and capture dmesg and ftrace data until resume is complete. 21 Generates output files in subdirectory: suspend-yymmdd-HHMMSS 24 raw ftrace file : <hostname>_<mode>_ftrace.txt 27 \fB-h\fR 30 \fB-v\fR 33 \fB-verbose\fR 36 \fB-config \fIfile\fR 39 \fB-m \fImode\fR 42 \fB-o \fIname\fR [all …]
|
D | bootgraph.8 | 3 bootgraph \- Kernel boot timing analysis 21 The tool can also augment the timeline with ftrace data on custom target 24 Generates output files in subdirectory: boot-yymmdd-HHMMSS 27 raw ftrace file : <hostname>_boot_ftrace.txt 30 \fB-h\fR 33 \fB-v\fR 36 \fB-addlogs\fR 40 \fB-result \fIfile\fR 43 \fB-o \fIname\fR 47 e.g. boot-{hostname}-{date}-{time} [all …]
|
/linux-6.14.4/kernel/trace/ |
D | fprobe.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * fprobe - Simple ftrace probe wrapper for function entry. 26 #define SIZE_IN_LONG(x) ((x + sizeof(long) - 1) >> (sizeof(long) == 8 ? 3 : 2)) 32 * instance related to the funciton address. The key is the ftrace IP 40 * - Normal hlist traversal and RCU add/del under 'fprobe_mutex' is held. 41 * - RCU hlist traversal under disabling preempt 49 * probe, once for correcting the total required size, the second time is 62 if (node->addr == ip) in find_first_fprobe_node() 72 unsigned long ip = node->addr; in insert_fprobe_node() 80 hlist_add_before_rcu(&node->hlist, &next->hlist); in insert_fprobe_node() [all …]
|
D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 21 API, which will be used by other function-entry hooking 27 See Documentation/trace/ftrace-design.rst 32 See Documentation/trace/ftrace-design.rst 45 See Documentation/trace/ftrace-design.rst 75 but does not want them included in the ftrace locations. 80 See Documentation/trace/ftrace-design.rst 85 See Documentation/trace/ftrace-design.rst 90 Arch supports the gcc options -pg with -mfentry 95 Arch supports the gcc options -pg with -mrecord-mcount and -nop-mcount [all …]
|
D | trace_export.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * trace_export.c - export basic ftrace utilities to user space 11 #include <linux/ftrace.h> 25 #define TRACE_SYSTEM ftrace 28 * The FTRACE_ENTRY_REG macro allows ftrace entry to define register 52 #define __array(type, item, size) type item[size]; argument 55 #define __stack_array(type, item, size, field) __array(type, item, size) argument 58 #define __array_desc(type, container, item, size) type item[size]; argument 78 /* force compile-time check on F_printk() */ \ 91 .size = sizeof(_type), .align = __alignof__(_type), \ [all …]
|
D | trace_boot.c | 1 // SPDX-License-Identifier: GPL-2.0 4 * Tracing kernel boot-time 11 #include <linux/ftrace.h> 32 /* Common ftrace options */ in trace_boot_set_instance_options() 63 pr_err("Buffer size is too small: %s\n", p); in trace_boot_set_instance_options() 133 return -ENOTSUPP; in trace_boot_add_kprobe_event() 170 return -ENOTSUPP; in trace_boot_add_synth_event() 182 return -ENOSPC; in append_printf() 185 ret = vsnprintf(*bufp, end - *bufp, fmt, args); in append_printf() 186 if (ret < end - *bufp) { in append_printf() [all …]
|
D | trace_selftest.c | 1 // SPDX-License-Identifier: GPL-2.0 12 switch (entry->type) { in trace_valid_entry() 33 while ((event = ring_buffer_consume(buf->buffer, cpu, NULL, NULL))) { in trace_test_buffer_cpu() 37 * The ring buffer is a size of trace_buf_size, if in trace_test_buffer_cpu() 38 * we loop more than the size, there's something wrong in trace_test_buffer_cpu() 47 entry->type); in trace_test_buffer_cpu() 57 return -1; in trace_test_buffer_cpu() 71 arch_spin_lock(&buf->tr->max_lock); in trace_test_buffer() 73 cnt = ring_buffer_entries(buf->buffer); in trace_test_buffer() 89 arch_spin_unlock(&buf->tr->max_lock); in trace_test_buffer() [all …]
|
D | ftrace.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Infrastructure for profiling code inserted by 'gcc -pg'. 5 * Copyright (C) 2007-2008 Steven Rostedt <[email protected]> 6 * Copyright (C) 2004-2008 Ingo Molnar <[email protected]> 8 * Originally ported from the -rt patch by: 13 * Copyright (C) 2004-2006 Ingo Molnar 29 #include <linux/ftrace.h> 94 /* ftrace_enabled is a method to turn ftrace on or off */ 107 if (!(ops->flags & FTRACE_OPS_FL_PID) || !ops->private) in ftrace_pids_enabled() 110 tr = ops->private; in ftrace_pids_enabled() [all …]
|
/linux-6.14.4/include/linux/ |
D | fprobe.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 2 /* Simple ftrace probe wrapper */ 7 #include <linux/ftrace.h> 22 * struct fprobe_hlist_node - address based hash list node for fprobe. 35 * struct fprobe_hlist - hash list nodes for fprobe. 40 * @size: The size of @array. 47 int size; member 48 struct fprobe_hlist_node array[] __counted_by(size); 52 * struct fprobe - ftrace based probe. 56 * @entry_data_size: The private data storage size. [all …]
|
D | trace.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 10 * The trace export - an export of Ftrace output. The trace_export 12 * an addition to the current only output of Ftrace - i.e. ring buffer. 18 * next - pointer to the next trace_export 19 * write - copy traces which have been delt with ->commit() to 21 * flags - which ftrace to be exported 37 * trace_array_puts - write a constant string into the trace buffer. 43 str ? __trace_array_puts(tr, _THIS_IP_, str, strlen(str)) : -1; \ 46 const char *str, int size); 66 return -EINVAL; in register_ftrace_export() [all …]
|
/linux-6.14.4/arch/s390/include/asm/ |
D | module.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 5 #include <asm-generic/module.h> 23 /* Size of the got. */ 25 /* Size of the plt. */ 32 /* Start of memory reserved for ftrace hotpatch trampolines. */ 34 /* End of memory reserved for ftrace hotpatch trampolines. */ 36 /* Next unused ftrace hotpatch trampoline slot. */ 45 const char *secstrs = (void *)hdr + sechdrs[hdr->e_shstrndx].sh_offset; in find_section() 48 for (s = sechdrs, se = sechdrs + hdr->e_shnum; s < se; s++) { in find_section() 49 if (strcmp(name, secstrs + s->sh_name) == 0) in find_section()
|
/linux-6.14.4/Documentation/devicetree/bindings/reserved-memory/ |
D | ramoops.yaml | 1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/reserved-memory/ramoops.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 11 recovered after a reboot. This is a child-node of "/reserved-memory", and 16 as kernel log messages, or for optional ECC error-correction data. The total 17 size of these optional buffers must fit in the reserved region. 20 records. These records have a configurable size, with a size of 0 indicating 23 At least one of "record-size", "console-size", "ftrace-size", or "pmsg-size" 24 must be set non-zero, but are otherwise optional as listed below. [all …]
|
/linux-6.14.4/Documentation/admin-guide/ |
D | pstore-blk.rst | 1 .. SPDX-License-Identifier: GPL-2.0 7 ------------ 10 block device and non-block device before the system crashes. You can get 13 mount -t pstore pstore /sys/fs/pstore 17 --------------------- 27 Configurations for driver are all about block device and non-block device, 31 ----------------------- 51 #. /dev/<disk_name><decimal> represents the device number of partition - device 53 #. /dev/<disk_name>p<decimal> - same as the above; this form is used when disk 60 #. PARTUUID=00112233-4455-6677-8899-AABBCCDDEEFF represents the unique id of [all …]
|
/linux-6.14.4/tools/power/pm-graph/config/ |
D | example.cfg | 9 # sudo ./sleepgraph.py -config config/example.cfg 14 # ---- General Options ---- 25 # output folder for html, ftrace, and dmesg. Use {date} and {time} for current values 26 output-dir: suspend-{hostname}-{date}-{time} 33 # add the dmesg and ftrace log to the html output (default: false) 49 # Enable/disable runtime suspend for all devices, restore all after test (default: no-action) 53 # Switch the display on/off for the test using xset (default: no-action) 57 # Print the status of the test run in the given file (default: no-action) 64 # ---- Advanced Options ---- 103 callloop-maxgap: 0.0001 [all …]
|
/linux-6.14.4/Documentation/process/debugging/ |
D | userspace_debugging_guide.rst | 1 .. SPDX-License-Identifier: GPL-2.0 20 ------------- 22 Mechanism to filter what ends up in the kernel log by dis-/en-abling log 29 - pr_debug() 30 - dev_dbg() 31 - print_hex_dump_debug() 32 - print_hex_dump_bytes() 45 $ ddcmd '-p; file v4l2-h264.c +p' 47 drivers/media/v4l2-core/v4l2-h264.c:372 [v4l2_h264]print_ref_list_b =p 49 drivers/media/v4l2-core/v4l2-h264.c:333 [v4l2_h264]print_ref_list_p =p [all …]
|
/linux-6.14.4/tools/testing/selftests/rcutorture/bin/ |
D | kvm-recheck-rcuscale-ftrace.sh | 2 # SPDX-License-Identifier: GPL-2.0+ 5 # looking for ftrace data. Exits with 0 if data was found, analyzed, and 6 # printed. Intended to be invoked from kvm-recheck-rcuscale.sh after 9 # Usage: kvm-recheck-rcuscale-ftrace.sh resdir 18 if test "`grep -c 'rcu_exp_grace_period.*start' < $i/console.log`" -lt 100 23 sed -e 's/^\[[^]]*]//' < $i/console.log | 25 sed -e 's/us : / : /' | 26 tr -d '\015' | 39 curgpdur = $3 - starttime; 60 print "No ftrace records found???" [all …]
|
/linux-6.14.4/arch/x86/kernel/ |
D | ftrace.c | 1 // SPDX-License-Identifier: GPL-2.0 5 * Copyright (C) 2007-2008 Steven Rostedt <[email protected]> 18 #include <linux/ftrace.h> 33 #include <asm/ftrace.h> 35 #include <asm/text-patching.h> 47 * ftrace has it set to "read/write". in ftrace_arch_code_modify_prepare() 94 return -EFAULT; in ftrace_verify_code() 101 return -EINVAL; in ftrace_verify_code() 133 unsigned long ip = rec->ip; in ftrace_make_nop() 151 * x86 overrides ftrace_replace_code -- this function will never be used in ftrace_make_nop() [all …]
|