cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

tracepoint.rst (1579B)


      1===============================
      2The Linux Kernel Tracepoint API
      3===============================
      4
      5:Author: Jason Baron
      6:Author: William Cohen
      7
      8Introduction
      9============
     10
     11Tracepoints are static probe points that are located in strategic points
     12throughout the kernel. 'Probes' register/unregister with tracepoints via
     13a callback mechanism. The 'probes' are strictly typed functions that are
     14passed a unique set of parameters defined by each tracepoint.
     15
     16From this simple callback mechanism, 'probes' can be used to profile,
     17debug, and understand kernel behavior. There are a number of tools that
     18provide a framework for using 'probes'. These tools include Systemtap,
     19ftrace, and LTTng.
     20
     21Tracepoints are defined in a number of header files via various macros.
     22Thus, the purpose of this document is to provide a clear accounting of
     23the available tracepoints. The intention is to understand not only what
     24tracepoints are available but also to understand where future
     25tracepoints might be added.
     26
     27The API presented has functions of the form:
     28``trace_tracepointname(function parameters)``. These are the tracepoints
     29callbacks that are found throughout the code. Registering and
     30unregistering probes with these callback sites is covered in the
     31``Documentation/trace/*`` directory.
     32
     33IRQ
     34===
     35
     36.. kernel-doc:: include/trace/events/irq.h
     37   :internal:
     38
     39SIGNAL
     40======
     41
     42.. kernel-doc:: include/trace/events/signal.h
     43   :internal:
     44
     45Block IO
     46========
     47
     48.. kernel-doc:: include/trace/events/block.h
     49   :internal:
     50
     51Workqueue
     52=========
     53
     54.. kernel-doc:: include/trace/events/workqueue.h
     55   :internal: