• Home
  • Raw
  • Download

Lines Matching full:trace

113 	This sets or displays whether writing to the trace
128 trace:
130 This file holds the output of the trace in a human
141 The output is the same as the "trace" file but this
144 retrieved. Unlike the "trace" file, this file is a
149 "trace" file is static, and if the tracer is not
163 trace option (also in trace_options). Options may also be set
171 The maximum time is saved in this file. The max trace will also be
172 stored, and displayed by "trace". A new max trace will only be
181 Some latency tracers will record a trace whenever the
189 buffer holds. By default, the trace buffers are the same size
192 trace buffers are allocated in pages (blocks of memory
207 This displays the total combined size of all the trace buffers.
223 This is a mask that lets the user only trace on specified CPUs.
235 will limit the trace to only those functions.
260 Have the function tracer only trace the threads whose PID are
285 Have the events only trace a task with a PID listed in this file.
286 Note, sched_switch and sched_wake_up will also trace events
296 Have the events not trace a task with a PID listed in this file.
297 Note, sched_switch and sched_wakeup will trace threads not listed
299 sched_switch or sched_wakeup events also trace a thread that should
310 tracer to only trace these functions and the functions that
324 This lists the functions that ftrace has processed and can trace.
339 Not only does the trace infrastructure use ftrace function
340 trace utility, but other subsystems might too. This file
382 Enable dynamic trace points. See kprobetrace.rst.
386 Dynamic trace points stats. See kprobetrace.rst.
391 it will trace into a function. Setting this to a value of
406 Only the pid of the task is recorded in a trace event unless
431 take a snapshot of the current running trace.
438 See the "Stack Trace" section below.
442 This displays the stack back trace of the largest stack
444 See the "Stack Trace" section below.
562 See "Event triggers" in Documentation/trace/events.rst and an
563 example in Documentation/trace/histogram.rst (Section 3.)
582 This is a way to make multiple trace buffers where different
588 This is the trace event directory. It holds event tracepoints
612 logging trace events into the event buffer. Events with
640 This is a directory that contains the trace per_cpu information.
651 per_cpu/cpu0/trace:
653 This is similar to the "trace" file, but it will only display
726 Function call tracer to trace all kernel functions.
751 the trace with the longest max latency.
753 it replaces the old trace. It is best to view this
754 trace with the latency-format option enabled, which
789 A special tracer that is used to trace binary module.
790 It will trace all the calls that a module makes to the
797 calls within the kernel. It will trace when a likely and
803 This is the "trace nothing" tracer. To remove all
849 Here is an example of the output format of the file "trace"::
875 the trace. In this case the tracer is "function". Then it shows the
888 Latency trace format
892 tracers is set, the trace file gives somewhat more information to see
893 why a latency happened. Here is a typical trace::
897 # irqsoff latency trace v1.1.5 on 3.8.0-test+
918 ps-6143 2d..1 306us : <stack trace>
932 for which interrupts were disabled. It gives the trace version (which
935 of trace entries displayed and the total number (both are four: #4/4).
948 The next lines after the header are the trace itself. The header
951 cmd: The name of the process in the trace.
981 When the latency-format option is enabled, the trace file
983 trace. This differs from the output when latency-format
990 current trace and the next trace.
1000 The rest is the same as the 'trace' file.
1002 Note, the latency tracers will usually end with a back trace
1009 what gets printed in the trace output, or manipulate the tracers.
1035 function-trace
1083 This deals with the trace file when the
1112 the trace is reported, it shows the oldest events first,
1126 This option changes the trace. It records a
1128 each trace event.
1139 trace,trace_pipe. Example::
1155 This option changes the trace output. When it is enabled,
1156 the trace displays additional information about the
1157 latency, as described in "Latency trace format".
1159 pause-on-trace
1160 When set, opening the trace file for read, will pause
1162 This simulates the original behavior of the trace file.
1167 in the sched_switch trace point to fill comm cache
1175 in the sched_switch trace point to fill the cache of
1180 This controls what happens when the trace buffer is
1192 When disabled, the trace looks like::
1218 function-trace
1221 it is disabled, the latency tracers do not trace
1239 When set, a stack trace is recorded after any trace event
1258 When set, a stack trace is recorded after every
1276 trace in the call graph. If the depth of the
1282 When set, the CPU number of the CPU where the trace
1346 the trace leading up to that latency point so that every time a
1347 new maximum is reached, the old saved trace is discarded and the
1348 new trace is saved.
1353 # echo 0 > options/function-trace
1360 # cat trace
1363 # irqsoff latency trace v1.1.5 on 3.8.0-test+
1384 <idle>-0 0dNs3 25us : <stack trace>
1407 Note the above example had function-trace not set. If we set
1408 function-trace, we get a much larger output::
1410 with echo 1 > options/function-trace
1414 # irqsoff latency trace v1.1.5 on 3.8.0-test+
1451 bash-2042 3d..1 120us : <stack trace>
1483 trace has provided some very helpful debugging information.
1492 # irqsoff latency trace v1.1.5 on 4.20.0-rc6+
1522 bash-1507 0d..1 3792us : <stack trace>
1552 # echo 0 > options/function-trace
1559 # cat trace
1562 # preemptoff latency trace v1.1.5 on 3.8.0-test+
1583 sshd-1991 1d..1 52us : <stack trace>
1600 # preemptoff latency trace v1.1.5 on 3.8.0-test+
1652 bash-1994 1.N.1 104us : <stack trace>
1662 The above is an example of the preemptoff trace with
1663 function-trace set. Here we see that interrupts were not disabled
1695 But neither will trace the time that interrupts and/or
1700 Again, using this trace is much like the irqsoff and preemptoff
1704 # echo 0 > options/function-trace
1711 # cat trace
1714 # preemptirqsoff latency trace v1.1.5 on 3.8.0-test+
1735 ls-2230 3...1 111us : <stack trace>
1763 Here is a trace with function-trace set::
1767 # preemptirqsoff latency trace v1.1.5 on 3.8.0-test+
1846 ls-2269 3d... 186us : <stack trace>
1856 This is an interesting trace. It started with kworker running and
1874 # echo 0 > options/function-trace
1880 # cat trace
1883 # wakeup latency trace v1.1.5 on 3.8.0-test+
1910 trace is to concentrate only on Real-Time tasks.
1941 # echo 0 > options/function-trace
1947 # cat trace
1952 # wakeup_rt latency trace v1.1.5 on 3.8.0-test+
1974 to perform the task switch. Note, since the trace point in the schedule
1984 Note, that the trace data shows the internal priority (99 - rtprio).
1994 Doing the same with chrt -r 5 and function-trace set.
1997 echo 1 > options/function-trace
2001 # wakeup_rt latency trace v1.1.5 on 3.8.0-test+
2102 This isn't that big of a trace, even with function tracing enabled,
2103 so I included the entire trace.
2117 # echo 0 > options/function-trace
2124 # cat trace
2127 # wakeup_rt latency trace v1.1.5 on 3.8.0-test+
2167 # cat trace
2230 needs to be detected before the trace will be recorded.
2266 # cat trace
2291 Sometimes using echo to stop the trace is not sufficient because
2315 By writing into set_ftrace_pid you can trace a
2324 # cat trace | head
2336 # cat trace |head
2348 If you want to trace a function when executing, you could use
2512 enabled. It is sometimes better to only trace one cpu (see
2636 trace buffer.
2639 enabled for functions whose start is in the trace buffer,
2739 wish to trace and which ones we want the mcount calls to remain
2774 # cat trace
2977 If you want to trace only one function and all of its children,
2982 will produce the following "expanded" trace of the __do_fault()
3025 Now if you want to go back to trace all functions you can clear
3059 Trace commands have the following format::
3085 Disable tracing for all modules, but still trace kernel::
3138 These commands can enable or disable a trace event. Note, because
3140 are registered, the trace point is activated, but disabled in
3164 something, and want to dump the trace when a certain function
3175 When the function is hit, a stack trace is recorded.
3180 The trace_pipe outputs the same content as the trace file, but
3183 different. The trace is live.
3187 # cat trace_pipe > /tmp/trace.out &
3192 # cat trace
3206 # cat /tmp/trace.out
3219 added. This is contrary to the trace file. If any process opened
3220 the trace file for reading, it will actually disable tracing and
3224 trace entries
3229 used to modify the size of the internal trace buffers. The
3290 Snapshot preserves a current trace buffer at a particular point
3304 "trace" (described above in the section "The File
3341 # cat trace
3381 set_event snapshot trace trace_clock trace_marker trace_options
3457 # cat instances/zoot/trace
3481 You can see that the trace of the top most trace buffer shows only
3492 Note, if a process has a trace file open in one of the instance
3496 Stack trace
3516 You can also enable it from the kernel command line to trace
3556 More details can be found in the source code, in the `kernel/trace/*.c` files.