Merge tag 'trace-v6.3' of git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux...
[sfrench/cifs-2.6.git] / Documentation / trace / events.rst
index d0fd5c7220b716265f03a361e15d6f268ef47e6a..f5fcb8e1218f6979f50445ceed9f5de179e86f99 100644 (file)
@@ -24,27 +24,27 @@ tracing information should be printed.
 ---------------------------------
 
 The events which are available for tracing can be found in the file
-/sys/kernel/debug/tracing/available_events.
+/sys/kernel/tracing/available_events.
 
 To enable a particular event, such as 'sched_wakeup', simply echo it
-to /sys/kernel/debug/tracing/set_event. For example::
+to /sys/kernel/tracing/set_event. For example::
 
-       # echo sched_wakeup >> /sys/kernel/debug/tracing/set_event
+       # echo sched_wakeup >> /sys/kernel/tracing/set_event
 
 .. Note:: '>>' is necessary, otherwise it will firstly disable all the events.
 
 To disable an event, echo the event name to the set_event file prefixed
 with an exclamation point::
 
-       # echo '!sched_wakeup' >> /sys/kernel/debug/tracing/set_event
+       # echo '!sched_wakeup' >> /sys/kernel/tracing/set_event
 
 To disable all events, echo an empty line to the set_event file::
 
-       # echo > /sys/kernel/debug/tracing/set_event
+       # echo > /sys/kernel/tracing/set_event
 
 To enable all events, echo ``*:*`` or ``*:`` to the set_event file::
 
-       # echo *:* > /sys/kernel/debug/tracing/set_event
+       # echo *:* > /sys/kernel/tracing/set_event
 
 The events are organized into subsystems, such as ext4, irq, sched,
 etc., and a full event name looks like this: <subsystem>:<event>.  The
@@ -53,29 +53,29 @@ file.  All of the events in a subsystem can be specified via the syntax
 ``<subsystem>:*``; for example, to enable all irq events, you can use the
 command::
 
-       # echo 'irq:*' > /sys/kernel/debug/tracing/set_event
+       # echo 'irq:*' > /sys/kernel/tracing/set_event
 
 2.2 Via the 'enable' toggle
 ---------------------------
 
-The events available are also listed in /sys/kernel/debug/tracing/events/ hierarchy
+The events available are also listed in /sys/kernel/tracing/events/ hierarchy
 of directories.
 
 To enable event 'sched_wakeup'::
 
-       # echo 1 > /sys/kernel/debug/tracing/events/sched/sched_wakeup/enable
+       # echo 1 > /sys/kernel/tracing/events/sched/sched_wakeup/enable
 
 To disable it::
 
-       # echo 0 > /sys/kernel/debug/tracing/events/sched/sched_wakeup/enable
+       # echo 0 > /sys/kernel/tracing/events/sched/sched_wakeup/enable
 
 To enable all events in sched subsystem::
 
-       # echo 1 > /sys/kernel/debug/tracing/events/sched/enable
+       # echo 1 > /sys/kernel/tracing/events/sched/enable
 
 To enable all events::
 
-       # echo 1 > /sys/kernel/debug/tracing/events/enable
+       # echo 1 > /sys/kernel/tracing/events/enable
 
 When reading one of these enable files, there are four results:
 
@@ -126,7 +126,7 @@ is the size of the data item, in bytes.
 For example, here's the information displayed for the 'sched_wakeup'
 event::
 
-       # cat /sys/kernel/debug/tracing/events/sched/sched_wakeup/format
+       # cat /sys/kernel/tracing/events/sched/sched_wakeup/format
 
        name: sched_wakeup
        ID: 60
@@ -227,19 +227,19 @@ to the 'filter' file for the given event.
 
 For example::
 
-       # cd /sys/kernel/debug/tracing/events/sched/sched_wakeup
+       # cd /sys/kernel/tracing/events/sched/sched_wakeup
        # echo "common_preempt_count > 4" > filter
 
 A slightly more involved example::
 
-       # cd /sys/kernel/debug/tracing/events/signal/signal_generate
+       # cd /sys/kernel/tracing/events/signal/signal_generate
        # echo "((sig >= 10 && sig < 15) || sig == 17) && comm != bash" > filter
 
 If there is an error in the expression, you'll get an 'Invalid
 argument' error when setting it, and the erroneous string along with
 an error message can be seen by looking at the filter e.g.::
 
-       # cd /sys/kernel/debug/tracing/events/signal/signal_generate
+       # cd /sys/kernel/tracing/events/signal/signal_generate
        # echo "((sig >= 10 && sig < 15) || dsig == 17) && comm != bash" > filter
        -bash: echo: write error: Invalid argument
        # cat filter
@@ -270,7 +270,7 @@ file.
 To clear the filters for all events in a subsystem, write a '0' to the
 subsystem's filter file.
 
-5.3 Subsystem filters
+5.4 Subsystem filters
 ---------------------
 
 For convenience, filters for every event in a subsystem can be set or
@@ -289,7 +289,7 @@ above points:
 
 Clear the filters on all events in the sched subsystem::
 
-       # cd /sys/kernel/debug/tracing/events/sched
+       # cd /sys/kernel/tracing/events/sched
        # echo 0 > filter
        # cat sched_switch/filter
        none
@@ -299,7 +299,7 @@ Clear the filters on all events in the sched subsystem::
 Set a filter using only common fields for all events in the sched
 subsystem (all events end up with the same filter)::
 
-       # cd /sys/kernel/debug/tracing/events/sched
+       # cd /sys/kernel/tracing/events/sched
        # echo common_pid == 0 > filter
        # cat sched_switch/filter
        common_pid == 0
@@ -310,14 +310,14 @@ Attempt to set a filter using a non-common field for all events in the
 sched subsystem (all events but those that have a prev_pid field retain
 their old filters)::
 
-       # cd /sys/kernel/debug/tracing/events/sched
+       # cd /sys/kernel/tracing/events/sched
        # echo prev_pid == 0 > filter
        # cat sched_switch/filter
        prev_pid == 0
        # cat sched_wakeup/filter
        common_pid == 0
 
-5.4 PID filtering
+5.5 PID filtering
 -----------------
 
 The set_event_pid file in the same directory as the top events directory
@@ -325,7 +325,7 @@ exists, will filter all events from tracing any task that does not have the
 PID listed in the set_event_pid file.
 ::
 
-       # cd /sys/kernel/debug/tracing
+       # cd /sys/kernel/tracing
        # echo $$ > set_event_pid
        # echo 1 > events/enable
 
@@ -421,14 +421,14 @@ The following commands are supported:
   specifies that this enablement happens only once::
 
          # echo 'enable_event:kmem:kmalloc:1' > \
-             /sys/kernel/debug/tracing/events/syscalls/sys_enter_read/trigger
+             /sys/kernel/tracing/events/syscalls/sys_enter_read/trigger
 
   The following trigger causes kmalloc events to stop being traced
   when a read system call exits.  This disablement happens on every
   read system call exit::
 
          # echo 'disable_event:kmem:kmalloc' > \
-             /sys/kernel/debug/tracing/events/syscalls/sys_exit_read/trigger
+             /sys/kernel/tracing/events/syscalls/sys_exit_read/trigger
 
   The format is::
 
@@ -438,10 +438,10 @@ The following commands are supported:
   To remove the above commands::
 
          # echo '!enable_event:kmem:kmalloc:1' > \
-             /sys/kernel/debug/tracing/events/syscalls/sys_enter_read/trigger
+             /sys/kernel/tracing/events/syscalls/sys_enter_read/trigger
 
          # echo '!disable_event:kmem:kmalloc' > \
-             /sys/kernel/debug/tracing/events/syscalls/sys_exit_read/trigger
+             /sys/kernel/tracing/events/syscalls/sys_exit_read/trigger
 
   Note that there can be any number of enable/disable_event triggers
   per triggering event, but there can only be one trigger per
@@ -460,13 +460,13 @@ The following commands are supported:
   kmalloc tracepoint is hit::
 
          # echo 'stacktrace' > \
-               /sys/kernel/debug/tracing/events/kmem/kmalloc/trigger
+               /sys/kernel/tracing/events/kmem/kmalloc/trigger
 
   The following trigger dumps a stacktrace the first 5 times a kmalloc
   request happens with a size >= 64K::
 
          # echo 'stacktrace:5 if bytes_req >= 65536' > \
-               /sys/kernel/debug/tracing/events/kmem/kmalloc/trigger
+               /sys/kernel/tracing/events/kmem/kmalloc/trigger
 
   The format is::
 
@@ -475,16 +475,16 @@ The following commands are supported:
   To remove the above commands::
 
          # echo '!stacktrace' > \
-               /sys/kernel/debug/tracing/events/kmem/kmalloc/trigger
+               /sys/kernel/tracing/events/kmem/kmalloc/trigger
 
          # echo '!stacktrace:5 if bytes_req >= 65536' > \
-               /sys/kernel/debug/tracing/events/kmem/kmalloc/trigger
+               /sys/kernel/tracing/events/kmem/kmalloc/trigger
 
   The latter can also be removed more simply by the following (without
   the filter)::
 
          # echo '!stacktrace:5' > \
-               /sys/kernel/debug/tracing/events/kmem/kmalloc/trigger
+               /sys/kernel/tracing/events/kmem/kmalloc/trigger
 
   Note that there can be only one stacktrace trigger per triggering
   event.
@@ -500,20 +500,20 @@ The following commands are supported:
   capture those events when the trigger event occurred::
 
          # echo 'snapshot if nr_rq > 1' > \
-               /sys/kernel/debug/tracing/events/block/block_unplug/trigger
+               /sys/kernel/tracing/events/block/block_unplug/trigger
 
   To only snapshot once::
 
          # echo 'snapshot:1 if nr_rq > 1' > \
-               /sys/kernel/debug/tracing/events/block/block_unplug/trigger
+               /sys/kernel/tracing/events/block/block_unplug/trigger
 
   To remove the above commands::
 
          # echo '!snapshot if nr_rq > 1' > \
-               /sys/kernel/debug/tracing/events/block/block_unplug/trigger
+               /sys/kernel/tracing/events/block/block_unplug/trigger
 
          # echo '!snapshot:1 if nr_rq > 1' > \
-               /sys/kernel/debug/tracing/events/block/block_unplug/trigger
+               /sys/kernel/tracing/events/block/block_unplug/trigger
 
   Note that there can be only one snapshot trigger per triggering
   event.
@@ -531,20 +531,20 @@ The following commands are supported:
   trigger event::
 
          # echo 'traceoff:1 if nr_rq > 1' > \
-               /sys/kernel/debug/tracing/events/block/block_unplug/trigger
+               /sys/kernel/tracing/events/block/block_unplug/trigger
 
   To always disable tracing when nr_rq  > 1::
 
          # echo 'traceoff if nr_rq > 1' > \
-               /sys/kernel/debug/tracing/events/block/block_unplug/trigger
+               /sys/kernel/tracing/events/block/block_unplug/trigger
 
   To remove the above commands::
 
          # echo '!traceoff:1 if nr_rq > 1' > \
-               /sys/kernel/debug/tracing/events/block/block_unplug/trigger
+               /sys/kernel/tracing/events/block/block_unplug/trigger
 
          # echo '!traceoff if nr_rq > 1' > \
-               /sys/kernel/debug/tracing/events/block/block_unplug/trigger
+               /sys/kernel/tracing/events/block/block_unplug/trigger
 
   Note that there can be only one traceon or traceoff trigger per
   triggering event.