/linux/Documentation/trace/ |
H A 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 …]
|
H A 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 …]
|
H A 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 <changbin.du@intel.com> 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 …]
|
H A 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/tools/perf/ |
H A 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" 62 workload_exec_errno = info->si_value.sival_int; in ftrace__workload_exec_failed_signal() 76 pr_err("ftrace only works for %s!\n", in check_ftrace_capable() 104 int fd, ret = -1; in __write_tracing_file() 105 ssize_t size = strlen(val); in __write_tracing_file() local 113 return -1; in __write_tracing_file() [all …]
|
/linux/tools/perf/Documentation/ |
H A 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/tools/bootconfig/scripts/ |
H A 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/tools/power/pm-graph/ |
H A 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- [all...] |
H A 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 …]
|
H A D | README | 8 pm-graph: suspend/resume/boot timing analysis tools 11 …Home Page: https://www.intel.com/content/www/us/en/developer/topic-technology/open/pm-graph/overvi… 13 Report bugs/issues at bugzilla.kernel.org Tools/pm-graph 14 - https://bugzilla.kernel.org/buglist.cgi?component=pm-graph&product=Tools 17 - Getting Started: 20 - Feature Summary: 21 https://www.intel.com/content/www/us/en/developer/topic-technology/open/pm-graph/features.html 23 - upstream version in git: 24 git clone https://github.com/intel/pm-graph/ 27 - Overview [all …]
|
H A D | bootgraph.py | 2 # SPDX-License-Identifier: GPL-2.0-only 25 # ----------------- LIBRARIES -------------------- 42 # ----------------- CLASSES -------------------- 46 # A global, single-instance container used to 73 self.testtime = datetime.now().strftime('%Y-%m-%d_%H:%M:%S') 78 self.testdir = datetime.now().strftime('boot-%y%m%d-%H%M%S') 85 m = re.match(r'^(?P<x>[0-9]*)\.(?P<y>[0-9]*)\.(?P<z>[0-9]*).*', self.kernel) 99 'trace_options=nooverwrite,funcgraph-abstime,funcgraph-cpu,'\ 100 'funcgraph-duration,funcgraph-proc,funcgraph-tail,'\ 101 'nofuncgraph-overhead,context-info,graph-time '\ [all …]
|
/linux/kernel/trace/ |
H A D | fprobe.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * fprobe - Simple ftrace probe wrapper for function entry. 35 if (fp->exit_handler) { in __fprobe_handler() 36 rh = rethook_try_get(fp->rethook); in __fprobe_handler() 38 fp->nmissed++; in __fprobe_handler() 42 fpr->entry_ip = ip; in __fprobe_handler() 43 fpr->entry_parent_ip = parent_ip; in __fprobe_handler() 44 if (fp->entry_data_size) in __fprobe_handler() 45 entry_data = fpr->data; in __fprobe_handler() 48 if (fp->entry_handler) in __fprobe_handler() [all …]
|
H A 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 …]
|
H A 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 …]
|
H A 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 …]
|
H A 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 <srostedt@redhat.com> 6 * Copyright (C) 2004-2008 Ingo Molnar <mingo@redhat.com> 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/arch/s390/include/asm/ |
H A 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/Documentation/devicetree/bindings/reserved-memory/ |
H A 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/Documentation/admin-guide/ |
H A 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/tools/power/pm-graph/config/ |
H A 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/include/linux/ |
H A D | fprobe.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 2 /* Simple ftrace probe wrapper */ 7 #include <linux/ftrace.h> 21 * struct fprobe - ftrace based probe. 26 * @entry_data_size: The private data storage size. 51 /* This fprobe is soft-disabled. */ 62 return (fp) ? fp->flags & FPROBE_FL_DISABLED : false; in fprobe_disabled() 67 return (fp) ? fp->flags & FPROBE_FL_KPROBE_SHARED : false; in fprobe_shared_with_kprobes() 79 return -EOPNOTSUPP; in register_fprobe() 83 return -EOPNOTSUPP; in register_fprobe_ips() [all …]
|
H A 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/tools/testing/selftests/rcutorture/bin/ |
H A 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/tools/perf/util/ |
H A D | trace-event-info.c | 1 // SPDX-License-Identifier: GPL-2.0-only 24 #include "trace-event.h" 42 /* unfortunately, you can not stat debugfs or proc files for size */ 45 unsigned long long size = 0; in record_file() local 49 int err = -EIO; in record_file() 54 return -errno; in record_file() 57 /* put in zeros for file size, then fill true size later */ in record_file() 59 if (write(output_fd, &size, hdr_sz) != hdr_sz) in record_file() 66 size += r; in record_file() 72 /* ugh, handle big-endian hdr_size == 4 */ in record_file() [all …]
|
/linux/fs/pstore/ |
H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 21 Defines default size of pstore kernel log storage. 51 data can be retrieved from /sys/fs/pstore/pmsg-ramoops-[ID]. 82 For more information, see Documentation/admin-guide/ramoops.rst. 101 For more information, see Documentation/admin-guide/pstore-blk.rst 117 of partition - device number of disk plus the partition number 118 4) /dev/<disk_name>p<decimal> - same as the above, this form is 120 5) PARTUUID=00112233-4455-6677-8899-AABBCCDDEEFF representing the 123 partition using the format SSSSSSSS-PP, where SSSSSSSS is a zero- 124 filled hex representation of the 32-bit "NT disk signature", and PP [all …]
|