mirror of
				git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
				synced 2025-09-04 20:19:47 +08:00 
			
		
		
		
	 d6ba7a9c8b
			
		
	
	
		d6ba7a9c8b
		
	
	
	
	
		
			
			Convert the tracepoint docbook template to RST and add it to the core-api manual. No changes to the actual text beyond the mechanical formatting conversion. Cc: Jason Baron <jbaron@redhat.com> Cc: William Cohen <wcohen@redhat.com> Signed-off-by: Jonathan Corbet <corbet@lwn.net>
		
			
				
	
	
		
			56 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			ReStructuredText
		
	
	
	
	
	
			
		
		
	
	
			56 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			ReStructuredText
		
	
	
	
	
	
| ===============================
 | |
| 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:
 |