diff options
| author | David S. Miller <davem@davemloft.net> | 2009-06-15 06:02:23 -0400 |
|---|---|---|
| committer | David S. Miller <davem@davemloft.net> | 2009-06-15 06:02:23 -0400 |
| commit | 9cbc1cb8cd46ce1f7645b9de249b2ce8460129bb (patch) | |
| tree | 8d104ec2a459346b99413b0b77421ca7b9936c1a /Documentation/DocBook | |
| parent | ca44d6e60f9de26281fda203f58b570e1748c015 (diff) | |
| parent | 45e3e1935e2857c54783291107d33323b3ef33c8 (diff) | |
Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux-2.6
Conflicts:
Documentation/feature-removal-schedule.txt
drivers/scsi/fcoe/fcoe.c
net/core/drop_monitor.c
net/core/net-traces.c
Diffstat (limited to 'Documentation/DocBook')
| -rw-r--r-- | Documentation/DocBook/Makefile | 3 | ||||
| -rw-r--r-- | Documentation/DocBook/tracepoint.tmpl | 89 |
2 files changed, 91 insertions, 1 deletions
diff --git a/Documentation/DocBook/Makefile b/Documentation/DocBook/Makefile index b1eb661e6302..9632444f6c62 100644 --- a/Documentation/DocBook/Makefile +++ b/Documentation/DocBook/Makefile | |||
| @@ -13,7 +13,8 @@ DOCBOOKS := z8530book.xml mcabook.xml device-drivers.xml \ | |||
| 13 | gadget.xml libata.xml mtdnand.xml librs.xml rapidio.xml \ | 13 | gadget.xml libata.xml mtdnand.xml librs.xml rapidio.xml \ |
| 14 | genericirq.xml s390-drivers.xml uio-howto.xml scsi.xml \ | 14 | genericirq.xml s390-drivers.xml uio-howto.xml scsi.xml \ |
| 15 | mac80211.xml debugobjects.xml sh.xml regulator.xml \ | 15 | mac80211.xml debugobjects.xml sh.xml regulator.xml \ |
| 16 | alsa-driver-api.xml writing-an-alsa-driver.xml | 16 | alsa-driver-api.xml writing-an-alsa-driver.xml \ |
| 17 | tracepoint.xml | ||
| 17 | 18 | ||
| 18 | ### | 19 | ### |
| 19 | # The build process is as follows (targets): | 20 | # The build process is as follows (targets): |
diff --git a/Documentation/DocBook/tracepoint.tmpl b/Documentation/DocBook/tracepoint.tmpl new file mode 100644 index 000000000000..b0756d0fd579 --- /dev/null +++ b/Documentation/DocBook/tracepoint.tmpl | |||
| @@ -0,0 +1,89 @@ | |||
| 1 | <?xml version="1.0" encoding="UTF-8"?> | ||
| 2 | <!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN" | ||
| 3 | "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd" []> | ||
| 4 | |||
| 5 | <book id="Tracepoints"> | ||
| 6 | <bookinfo> | ||
| 7 | <title>The Linux Kernel Tracepoint API</title> | ||
| 8 | |||
| 9 | <authorgroup> | ||
| 10 | <author> | ||
| 11 | <firstname>Jason</firstname> | ||
| 12 | <surname>Baron</surname> | ||
| 13 | <affiliation> | ||
| 14 | <address> | ||
| 15 | <email>jbaron@redhat.com</email> | ||
| 16 | </address> | ||
| 17 | </affiliation> | ||
| 18 | </author> | ||
| 19 | </authorgroup> | ||
| 20 | |||
| 21 | <legalnotice> | ||
| 22 | <para> | ||
| 23 | This documentation is free software; you can redistribute | ||
| 24 | it and/or modify it under the terms of the GNU General Public | ||
| 25 | License as published by the Free Software Foundation; either | ||
| 26 | version 2 of the License, or (at your option) any later | ||
| 27 | version. | ||
| 28 | </para> | ||
| 29 | |||
| 30 | <para> | ||
| 31 | This program is distributed in the hope that it will be | ||
| 32 | useful, but WITHOUT ANY WARRANTY; without even the implied | ||
| 33 | warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. | ||
| 34 | See the GNU General Public License for more details. | ||
| 35 | </para> | ||
| 36 | |||
| 37 | <para> | ||
| 38 | You should have received a copy of the GNU General Public | ||
| 39 | License along with this program; if not, write to the Free | ||
| 40 | Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, | ||
| 41 | MA 02111-1307 USA | ||
| 42 | </para> | ||
| 43 | |||
| 44 | <para> | ||
| 45 | For more details see the file COPYING in the source | ||
| 46 | distribution of Linux. | ||
| 47 | </para> | ||
| 48 | </legalnotice> | ||
| 49 | </bookinfo> | ||
| 50 | |||
| 51 | <toc></toc> | ||
| 52 | <chapter id="intro"> | ||
| 53 | <title>Introduction</title> | ||
| 54 | <para> | ||
| 55 | Tracepoints are static probe points that are located in strategic points | ||
| 56 | throughout the kernel. 'Probes' register/unregister with tracepoints | ||
| 57 | via a callback mechanism. The 'probes' are strictly typed functions that | ||
| 58 | are passed a unique set of parameters defined by each tracepoint. | ||
| 59 | </para> | ||
| 60 | |||
| 61 | <para> | ||
| 62 | From this simple callback mechanism, 'probes' can be used to profile, debug, | ||
| 63 | and understand kernel behavior. There are a number of tools that provide a | ||
| 64 | framework for using 'probes'. These tools include Systemtap, ftrace, and | ||
| 65 | LTTng. | ||
| 66 | </para> | ||
| 67 | |||
| 68 | <para> | ||
| 69 | Tracepoints are defined in a number of header files via various macros. Thus, | ||
| 70 | the purpose of this document is to provide a clear accounting of the available | ||
| 71 | tracepoints. The intention is to understand not only what tracepoints are | ||
| 72 | available but also to understand where future tracepoints might be added. | ||
| 73 | </para> | ||
| 74 | |||
| 75 | <para> | ||
| 76 | The API presented has functions of the form: | ||
| 77 | <function>trace_tracepointname(function parameters)</function>. These are the | ||
| 78 | tracepoints callbacks that are found throughout the code. Registering and | ||
| 79 | unregistering probes with these callback sites is covered in the | ||
| 80 | <filename>Documentation/trace/*</filename> directory. | ||
| 81 | </para> | ||
| 82 | </chapter> | ||
| 83 | |||
| 84 | <chapter id="irq"> | ||
| 85 | <title>IRQ</title> | ||
| 86 | !Iinclude/trace/events/irq.h | ||
| 87 | </chapter> | ||
| 88 | |||
| 89 | </book> | ||
