From patchwork Mon Jan 25 23:28:42 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jonathan Corbet X-Patchwork-Id: 60429 Delivered-To: patch@linaro.org Received: by 10.112.130.2 with SMTP id oa2csp1647278lbb; Mon, 25 Jan 2016 15:29:16 -0800 (PST) X-Received: by 10.98.0.135 with SMTP id 129mr29681244pfa.156.1453764555086; Mon, 25 Jan 2016 15:29:15 -0800 (PST) Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id pg10si36675945pac.16.2016.01.25.15.29.14; Mon, 25 Jan 2016 15:29:15 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933757AbcAYX3E (ORCPT + 30 others); Mon, 25 Jan 2016 18:29:04 -0500 Received: from tex.lwn.net ([70.33.254.29]:60369 "EHLO vena.lwn.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S933499AbcAYX2x (ORCPT ); Mon, 25 Jan 2016 18:28:53 -0500 Received: from dt.lwn.net (localhost.localdomain [127.0.0.1]) by vena.lwn.net (Postfix) with ESMTP id 6FC31154004D; Mon, 25 Jan 2016 16:28:52 -0700 (MST) From: Jonathan Corbet To: linux-doc@vger.kernel.org Cc: linux-kernel@vger.kernel.org, Jani Nikula , Daniel Vetter , Jonathan Corbet Subject: [PATCH 4/4] Docs: add a sample asciidoc template Date: Mon, 25 Jan 2016 16:28:42 -0700 Message-Id: <1453764522-29030-5-git-send-email-corbet@lwn.net> X-Mailer: git-send-email 2.7.0 In-Reply-To: <1453764522-29030-1-git-send-email-corbet@lwn.net> References: <1453764522-29030-1-git-send-email-corbet@lwn.net> Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This is just a copy of tracepoints.tmpl (because it was short!) converted into asciidoc. Signed-off-by: Jonathan Corbet --- Documentation/DocBook/Makefile | 2 +- Documentation/DocBook/tpoint.adt | 64 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 65 insertions(+), 1 deletion(-) create mode 100644 Documentation/DocBook/tpoint.adt -- 2.7.0 diff --git a/Documentation/DocBook/Makefile b/Documentation/DocBook/Makefile index f04e8c8..2e5195e 100644 --- a/Documentation/DocBook/Makefile +++ b/Documentation/DocBook/Makefile @@ -15,7 +15,7 @@ DOCBOOKS := z8530book device-drivers \ 80211 debugobjects sh regulator \ alsa-driver-api writing-an-alsa-driver \ tracepoint gpu media_api w1 \ - writing_musb_glue_layer crypto-API iio + writing_musb_glue_layer crypto-API iio tpoint include Documentation/DocBook/media/Makefile diff --git a/Documentation/DocBook/tpoint.adt b/Documentation/DocBook/tpoint.adt new file mode 100644 index 0000000..f93863a --- /dev/null +++ b/Documentation/DocBook/tpoint.adt @@ -0,0 +1,64 @@ +The Linux Kernel Tracepoint API +=============================== +Jason Baron, William Cohen + +.This document +**************************************************************** +This documentation is free software; you can redistribute +it and/or modify it under the terms of the GNU General Public +License as published by the Free Software Foundation; either +version 2 of the License, or (at your option) any later +version. + +This program is distributed in the hope that it will be +useful, but WITHOUT ANY WARRANTY; without even the implied +warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +See the GNU General Public License for more details. + +You should have received a copy of the GNU General Public +License along with this program; if not, write to the Free +Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, +MA 02111-1307 USA + +For more details see the file COPYING in the source +distribution of Linux. +**************************************************************** + +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 +--- +!Iinclude/trace/events/irq.h + +SIGNAL +------ +!Iinclude/trace/events/signal.h + +Block IO +!Iinclude/trace/events/block.h + +Workqueue +--------- +!Iinclude/trace/events/workqueue.h