Documentation/core-api/tracepoint.rst

Source file repositories/reference/linux-study-clean/Documentation/core-api/tracepoint.rst

File Facts

System
Linux kernel
Corpus path
Documentation/core-api/tracepoint.rst
Extension
.rst
Size
1579 bytes
Lines
56
Domain
Support Tooling And Documentation
Bucket
Documentation
Inferred role
Support Tooling And Documentation: documentation
Status
atlas-only

Why This File Exists

Repository support layer: documentation, build tooling, samples, user-space helper tools, generated initramfs support, licenses, and validation utilities.

Dependency Surface

Detected Declarations

Annotated Snippet

===============================
The Linux Kernel Tracepoint API
===============================

:Author: Jason Baron
:Author: William Cohen

Introduction
============

Tracepoints are static probe points that are located in strategic points
throughout the kernel. 'Probes' register/unregister with tracepoints via
a callback mechanism. The 'probes' are strictly typed functions that are
passed a unique set of parameters defined by each tracepoint.

From this simple callback mechanism, 'probes' can be used to profile,
debug, and understand kernel behavior. There are a number of tools that
provide a framework for using 'probes'. These tools include Systemtap,
ftrace, and LTTng.

Tracepoints are defined in a number of header files via various macros.
Thus, the purpose of this document is to provide a clear accounting of
the available tracepoints. The intention is to understand not only what
tracepoints are available but also to understand where future
tracepoints might be added.

The API presented has functions of the form:
``trace_tracepointname(function parameters)``. These are the tracepoints
callbacks that are found throughout the code. Registering and
unregistering probes with these callback sites is covered in the
``Documentation/trace/*`` directory.

IRQ
===

.. kernel-doc:: include/trace/events/irq.h
   :internal:

SIGNAL
======

.. kernel-doc:: include/trace/events/signal.h
   :internal:

Block IO
========

.. kernel-doc:: include/trace/events/block.h
   :internal:

Workqueue
=========

.. kernel-doc:: include/trace/events/workqueue.h
   :internal:

Annotation

Implementation Notes