update lttv to 0.12.15
[lttv.git] / trunk / lttv / LTTngManual.html
CommitLineData
c924c2c6 1<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2<html>
3<head>
f6e6ee82 4 <title>Linux Trace Toolkit Next Generation Manual</title>
c924c2c6 5</head>
6 <body>
7
f6e6ee82 8<h1>Linux Trace Toolkit Next Generation Manual</h1>
c924c2c6 9
c924c2c6 10Author : Mathieu Desnoyers, September 2005<br>
24070967 11Last update : January 21st, 2009<br>
bc58079d 12(originally known as the LTTng QUICKSTART guide)
24070967 13
14<h2>Table of Contents</h2>
24070967 15
d58b406f 16<ul>
f9ff56f3 17<li><a href="#intro" name="TOCintro">Introduction</a></li>
7e77d1a9 18<ul>
19<li><a href="#arch" name="TOCarch">Supported architectures</a></li>
20</ul>
d58b406f 21
24070967 22<li><a href="#section1" name="TOCsection1">Installing LTTng and LTTV from
6f88b01d 23sources</a></li>
38b04cd7 24<ul>
2d540155 25<li><a href="#prerequisites" name="TOCprerequisites">Prerequisistes</li>
26<li><a href="#getlttng" name="TOCgetlttng">Getting the LTTng packages</li>
27<li><a href="#getlttngsrc" name="TOCgetlttngsrc">Getting the LTTng kernel sources</li>
28<li><a href="#installlttng" name="TOCinstalllttng">Installing a LTTng kernel</li>
6f88b01d 29<li><a href="#editconfig" name="TOCeditconfig">Editing the system wide
30configuration</a>
31<li><a href="#getlttctl" name="TOCgetlttctl">Getting and installing the
2d540155 32ltt-control package</li>
33<li><a href="#userspacetracing" name="TOCuserspacetracing">Userspace Tracing</li>
6f88b01d 34<li><a href="#getlttv" name="TOCgetlttv">Getting and installing the LTTV package</ul>
d58b406f 35
24070967 36<li><a href="#section2" name="TOCsection2">Using LTTng and LTTV</a></li>
d58b406f 37<ul>
38<li><a href="#uselttvgui" name="TOCuselttvgui">Use graphical LTTV to control
39tracing and analyse traces</a></li>
40<li><a href="#uselttngtext" name="TOCuselttngtext">Use text mode LTTng to
f7828b7c 41control tracing</a></li>
d58b406f 42<li><a href="#uselttvtext" name="TOCuselttvtext">Use text mode LTTV</a></li>
43<li><a href="#hybrid" name="TOChybrid">Tracing in "Hybrid" mode</a></li>
44<li><a href="#flight" name="TOCflight">Tracing in flight recorder mode</a></li>
d58b406f 45</ul>
46
24070967 47<li><a href="#section3" name="TOCsection3">Adding kernel and user-space
47e2b195 48instrumentation</a>
49<ul>
50<li><a href="#kerneltp" name="TOCkerneltp">Adding kernel instrumentation</a></li>
51<li><a href="#usertp" name="TOCusertp">Adding userspace instrumentation</a></li>
52</ul>
d58b406f 53
633bc4a3 54<li><a href="#section4" name="TOCsection4">Creating Debian and RPM packages
98dde887 55from LTTV</a></li>
56<ul>
57<li><a href="#pkgdebian" name="TOCpkgdebian">Create custom LTTV Debian
58<li><a href="#pkglttng" name="TOCpkglttng">Create custom LTTng packages</a></li>
98dde887 59</ul>
c924c2c6 60
f9ff56f3 61</ul>
62
63<hr />
64
b9e1fab1 65<h2><a href="#TOCintro" name="intro">Introduction</a></h2>
c924c2c6 66<p>
70a3fc43 67This document is made of five parts : the first one explains how
24070967 68to install LTTng and LTTV from sources, the second one describes the steps
633bc4a3 69to follow to trace a system and view it. The third part explains
c924c2c6 70briefly how to add a new trace point to the kernel and to user space
42cf459d 71applications. The fourth and last part explains how to create Debian or RPM
72packages from the LTTng and LTTV sources.
c924c2c6 73<p>
24070967 74These operations are made for installing the LTTng 0.86 tracer on a linux 2.6.X
c924c2c6 75kernel. You will also find instructions for installation of LTTV 0.12.x : the
76Linux Trace Toolkit Viewer.
24070967 77To see the list of compatibilities between LTTng, ltt-control, LTTV, please
78refer to :
c924c2c6 79<a
80href="http://ltt.polymtl.ca/svn/trunk/lttv/doc/developer/lttng-lttv-compatibility.html">LTTng+LTTV versions compatibility</a>
534f65eb 81
82The ongoing work had the Linux Kernel Markers integrated in the mainline Linux
83kernel since Linux 2.6.24 and the Tracepoints since 2.6.28. In its current
84state, the lttng patchset is necessary to have the trace clocksource, the
85instrumentation and the LTTng high-speed data extraction mechanism added to the
86kernel.
c924c2c6 87
24070967 88<br>
89<br>
7e77d1a9 90<h3><a href="#TOCarch" name="arch">Supported architectures</a></h3>
70a3fc43 91<br>
c924c2c6 92LTTng :<br>
70a3fc43 93<br>
c924c2c6 94<li> x86 32/64 bits
95<li> PowerPC 32 and 64 bits
96<li> ARM (with limited timestamping precision, e.g. 1HZ. Need
97architecture-specific support for better precision)
98<li> MIPS
1aeeacdb 99<li> sh (partial architecture-specific instrumentation)
100<li> sparc64 (partial architecture-specific instrumentation)
101<li> s390 (partial architecture-specific instrumentation)
102<li> Other architectures supported without architecture-specific instrumentation
103and with low-resolution timestamps.<br>
c924c2c6 104<br>
24070967 105<br>
c924c2c6 106LTTV :<br>
70a3fc43 107<br>
c924c2c6 108<li> Intel 32/64 bits
109<li> PowerPC 32 and 64 bits
110<li> Possibly others. Takes care of endianness and type size difference between
111the LTTng traces and the LTTV analysis tool.
112
f9ff56f3 113<hr />
114
c924c2c6 115
89aa576c 116<h2><a href="#TOCsection1" name="section1">Installation from sources</a></h2>
633bc4a3 117<p>
c924c2c6 118
6f88b01d 119<h3><a href="#TOCprerequisites" name="prerequisites">Prerequisites</a></h3>
633bc4a3 120<ul>
121<p>
c924c2c6 122Tools needed to follow the package download steps :
123
633bc4a3 124<li>wget
125<li>bzip2
126<li>gzip
127<li>tar
c924c2c6 128
633bc4a3 129<p>
c924c2c6 130You have to install the standard development libraries and programs necessary
131to compile a kernel :
132
84cf5903 133<PRE>
c924c2c6 134(from Documentation/Changes in the Linux kernel tree)
84cf5903 135Gnu C 2.95.3 # gcc --version
136Gnu make 3.79.1 # make --version
137binutils 2.12 # ld -v
138util-linux 2.10o # fdformat --version
139module-init-tools 0.9.10 # depmod -V
140</PRE>
c924c2c6 141
633bc4a3 142<p>
c924c2c6 143You might also want to have libncurses5 to have the text mode kernel
144configuration menu, but there are alternatives.
145
633bc4a3 146<p>
c924c2c6 147Prerequisites for LTTV 0.x.x installation are :
148
84cf5903 149<PRE>
150gcc 3.2 or better
151gtk 2.4 or better development libraries
c924c2c6 152 (Debian : libgtk2.0, libgtk2.0-dev)
153 (Fedora : gtk2, gtk2-devel)
154 note : For Fedora users : this might require at least core 3 from Fedora,
155 or you might have to compile your own GTK2 library.
84cf5903 156glib 2.4 or better development libraries
c924c2c6 157 (Debian : libglib2.0-0, libglib2.0-dev)
158 (Fedora : glib2, glib2-devel)
84cf5903 159libpopt development libraries
c924c2c6 160 (Debian : libpopt0, libpopt-dev)
161 (Fedora : popt)
84cf5903 162libpango development libraries
c924c2c6 163 (Debian : libpango1.0, libpango1.0-dev)
164 (Fedora : pango, pango-devel)
84cf5903 165libc6 development librairies
c924c2c6 166 (Debian : libc6, libc6-dev)
167 (Fedora : glibc, glibc)
84cf5903 168</PRE>
633bc4a3 169</ul>
c924c2c6 170
c8997124 171<li>Reminder</li>
c924c2c6 172
c8997124 173<p>
633bc4a3 174See the list of compatibilities between LTTng, ltt-control and LTTV at :
175<a
176href="http://ltt.polymtl.ca/svn/trunk/lttv/doc/developer/lttng-lttv-compatibility.html">LTTng+LTTV
177versions compatibility</a>.
c924c2c6 178
179
6f88b01d 180<h3><a href="#TOCgetlttng" name="getlttng">Getting the LTTng packages</a></h3>
c924c2c6 181
c8997124 182<PRE>
c924c2c6 183su -
184mkdir /usr/src/lttng
185cd /usr/src/lttng
186(see http://ltt.polymtl.ca/lttng for package listing)
187wget http://ltt.polymtl.ca/lttng/patch-2.6.X-lttng-0.x.xx.tar.bz2
188bzip2 -cd patch-2.6.X-lttng-0.x.xx.tar.bz2 | tar xvof -
c8997124 189</PRE>
c924c2c6 190
191
6f88b01d 192<h3><a href="#TOCgetlttngsrc" name="getlttngsrc">Getting LTTng kernel sources</a></h3>
c924c2c6 193
c8997124 194<PRE>
c924c2c6 195su -
196cd /usr/src
197wget http://kernel.org/pub/linux/kernel/v2.6/linux-2.6.X.tar.bz2
198bzip2 -cd linux-2.6.X.tar.bz2 | tar xvof -
199cd linux-2.6.X
200- For LTTng 0.9.4- cat /usr/src/lttng/patch*-2.6.X-lttng-0.x.xx* | patch -p1
201- For LTTng 0.9.5+ apply the patches in the order specified in the series file,
202 or use quilt
203cd ..
204mv linux-2.6.X linux-2.6.X-lttng-0.x.xx
c8997124 205</PRE>
c924c2c6 206
207
6f88b01d 208<h3><a href="#TOCinstalllttng" name="installlttng">Installing a LTTng kernel</a></h3>
c924c2c6 209
c8997124 210<PRE>
c924c2c6 211su -
212cd /usr/src/linux-2.6.X-lttng-0.x.xx
213make menuconfig (or make xconfig or make config)
214 Select the < Help > button if you are not familiar with kernel
215 configuration.
216 Items preceded by [*] means they has to be built into the kernel.
217 Items preceded by [M] means they has to be built as modules.
218 Items preceded by [ ] means they should be removed.
219 go to the "General setup" section
220 Select the following options :
221 [*] Prompt for development and/or incomplete code/drivers
222 [*] Activate markers
223 [*] Activate userspace markers ABI (experimental, optional)
224 [*] Immediate value optimization (optional)
225 [*] Linux Trace Toolkit Next Generation (LTTng) --->
226 <M> or <*> Compile lttng tracing probes
227 <M> or <*> Linux Trace Toolkit High-speed Lockless Data Relay
228 <M> or <*> Linux Trace Toolkit Lock-Protected Data Relay
229 <M> or <*> Linux Trace Toolkit Serializer
230 <M> or <*> Linux Trace Toolkit Marker Control
231 <M> or <*> Linux Trace Toolkit Tracer
232 [*] Align Linux Trace Toolkit Traces
233 <M> or <*> Support logging events from userspace
234 [*] Support trace extraction from crash dump
235 <M> or <*> Linux Trace Toolkit Trace Controller
236 <M> or <*> Linux Trace Toolkit State Dump
237 Select <Exit>
238 Select <Exit>
239 Select <Yes>
240make
241make modules_install
242(if necessary, create a initrd with mkinitrd or your preferate alternative)
243(mkinitrd -o /boot/initrd.img-2.6.X-lttng-0.x.xx 2.6.X-lttng-0.x.xx)
244
245-- on X86, X86_64
246make install
247reboot
248Select the Linux 2.6.X-lttng-0.x.xx kernel in your boot loader.
249
250-- on PowerPC
251cp vmlinux.strip /boot/vmlinux-2.6.X-lttng-0.x.xx
252cp System.map /boot/System.map-2.6.X-lttng-0.x.xx
253cp .config /boot/config-2.6.X-lttng-0.x.xx
254depmod -ae -F /boot/System.map-2.6.X-lttng-0.x.xx 2.6.X-lttng-0.x.xx
255mkinitrd /boot/initrd.img-2.6.X-lttng-0.x.xx 2.6.X-lttng-0.x.xx
256(edit /etc/yaboot.conf to add a new entry pointing to your kernel : the entry
257that comes first is the default kernel)
258ybin
259select the right entry at the yaboot prompt (see choices : tab, select : type
260the kernel name followed by enter)
261Select the Linux 2.6.X-lttng-0.x.xx kernel in your boot loader.
262--
c8997124 263</PRE>
c924c2c6 264
6f88b01d 265<h3><a href="#TOCeditconfig" name="editconfig">Editing the system wide
266configuration</a></h3>
c924c2c6 267
c8997124 268<p>
c924c2c6 269You must activate debugfs and specify a mount point. This is typically done in
c8997124 270fstab such that it happens at boot time. If you have never used DebugFS before,
271these operation would do this for you :
c924c2c6 272
c8997124 273<PRE>
c924c2c6 274mkdir /mnt/debugfs
275cp /etc/fstab /etc/fstab.lttng.bkp
276echo "debugfs /mnt/debugfs debugfs rw 0 0" >> /etc/fstab
c8997124 277</PRE>
c924c2c6 278
c8997124 279<p>
c924c2c6 280then, rebooting or issuing the following command will activate debugfs :
c8997124 281<PRE>
c924c2c6 282mount /mnt/debugfs
c8997124 283</PRE>
c924c2c6 284
c8997124 285<p>
c924c2c6 286You need to load the LTT modules to be able to control tracing from user
287space. This is done by issuing the following commands. Note however
288these commands load all LTT modules. Depending on what options you chose to
289compile statically, you may not need to issue all these commands.
290
c8997124 291<PRE>
c924c2c6 292modprobe ltt-trace-control
293modprobe ltt-marker-control
294modprobe ltt-tracer
295modprobe ltt-serialize
296modprobe ltt-relay
297modprobe ipc-trace
298modprobe kernel-trace
299modprobe mm-trace
300modprobe net-trace
301modprobe fs-trace
302modprobe jbd2-trace
303modprobe ext4-trace
304modprobe syscall-trace
305modprobe trap-trace
306#if locking tracing is wanted, uncomment the following
307#modprobe lockdep-trace
c8997124 308</PRE>
c924c2c6 309
c8997124 310<p>
c924c2c6 311If you want to have complete information about the kernel state (including all
312the process names), you need to load the ltt-statedump module. This is done by
313issuing the command :
314
c8997124 315<PRE>
c924c2c6 316modprobe ltt-statedump
c8997124 317</PRE>
318<p>
c924c2c6 319You can automate at boot time loading the ltt-control module by :
320
c8997124 321<PRE>
c924c2c6 322cp /etc/modules /etc/modules.bkp
323echo ltt-trace-control >> /etc/modules
324echo ltt-marker-control >> /etc/modules
325echo ltt-tracer >> /etc/modules
326echo ltt-serialize >> /etc/modules
327echo ltt-relay >> /etc/modules
328echo ipc-trace >> /etc/modules
329echo kernel-trace >> /etc/modules
330echo mm-trace >> /etc/modules
331echo net-trace >> /etc/modules
332echo fs-trace >> /etc/modules
333echo jbd2-trace >> /etc/modules
334echo ext4-trace >> /etc/modules
335echo syscall-trace >> /etc/modules
336echo trap-trace >> /etc/modules
337#if locking tracing is wanted, uncomment the following
338#echo lockdep-trace >> /etc/modules
c8997124 339</PRE>
c924c2c6 340
6f88b01d 341
342<h3><a href="#TOCgetlttctl" name="getlttctl">Getting and installing the
343ltt-control package (on the traced machine)</a></h3>
c8997124 344<p>
c924c2c6 345(note : the ltt-control package contains lttd and lttctl. Although it has the
346same name as the ltt-control kernel module, they are *not* the same thing.)
c8997124 347
348<PRE>
c924c2c6 349su -
350cd /usr/src
351wget http://ltt.polymtl.ca/lttng/ltt-control-0.x-xxxx2006.tar.gz
352gzip -cd ltt-control-0.x-xxxx2008.tar.gz | tar xvof -
353cd ltt-control-0.x-xxxx2006
354(refer to README to see the development libraries that must be installed on you
355system)
356./configure
357make
358make install
c8997124 359</PRE>
c924c2c6 360
38b04cd7 361<h3><a href="#TOCuserspacetracing" name="userspacetracing">Userspace tracing</a></h3>
c924c2c6 362
c8997124 363<PRE>
c924c2c6 364Make sure you selected the kernel menuconfig option :
365 <M> or <*> Support logging events from userspace
366And that the ltt-userspace-event kernel module is loaded if selected as a
367module.
368
369Simple userspace tracing is available through
370echo "some text to record" > /mnt/debugfs/ltt/write_event
371
372It will appear in the trace under event :
373channel : userspace
374event name : event
c8997124 375</PRE>
c924c2c6 376
6f88b01d 377<h3><a href="#TOCgetlttv" name="getlttv">Getting and installing the LTTV package
378(on the visualisation machine, same
379or different from the visualisation machine)</a></h3>
c924c2c6 380
c8997124 381<PRE>
c924c2c6 382su -
383cd /usr/src
384wget http://ltt.polymtl.ca/packages/lttv-0.x.xx-xxxx2008.tar.gz
385gzip -cd lttv-0.x.xx-xxxx2008.tar.gz | tar xvof -
386cd lttv-0.x.xx-xxxx2008
387(refer to README to see the development libraries that must be installed on your
388system)
389./configure
390make
391make install
13d7a628 392</PRE>
c924c2c6 393
c8997124 394<hr />
c924c2c6 395
c924c2c6 396
89aa576c 397<h2><a href="#TOCsection2" name="section2">Using LTTng and LTTV</a></h2>
c924c2c6 398
d58b406f 399<li><b>IMPORTANT : Arm Linux Kernel Markers after each boot before tracing</b></li>
c8997124 400<PRE>
c924c2c6 401ltt-armall
c8997124 402</PRE>
c924c2c6 403
d58b406f 404<h3><a href="#TOCuselttvgui" name="uselttvgui">Use graphical LTTV to control
405tracing and analyse traces</a></h3>
c8997124 406<PRE>
c924c2c6 407lttv-gui (or /usr/local/bin/lttv-gui)
408 - Spot the "Tracing Control" icon : click on it
409 (it's a traffic light icon)
410 - enter the root password
411 - click "start"
412 - click "stop"
413 - Yes
414 * You should now see a trace
c8997124 415</PRE>
c924c2c6 416
d58b406f 417<h3><a href="#TOCuselttngtext" name="uselttngtext">Use text mode LTTng to control tracing</a></h3>
c8997124 418<PRE>
c924c2c6 419The tracing can be controlled from a terminal by using the lttctl command (as
420root).
421
422Start tracing :
423
424lttctl -C -w /tmp/trace1 trace1
425
426Stop tracing and destroy trace channels :
427
428lttctl -D trace1
429
430see lttctl --help for details.
df7f63ab 431</PRE>
c8997124 432<p>
c924c2c6 433(note : to see if the buffers has been filled, look at the dmesg output after
196f71c4 434lttctl -D or after stopping tracing from the GUI, it will show an event lost
c924c2c6 435count. If it is the case, try using larger buffers. See lttctl --help to learn
436how. lttv now also shows event lost messages in the console when loading a trace
437with missing events or lost subbuffers.)
438
d58b406f 439<h3><a href="#TOCuselttvtext" name="uselttvtext">Use text mode LTTV</a></h3>
c8997124 440<p>
c924c2c6 441Feel free to look in /usr/local/lib/lttv/plugins to see all the text and
442graphical plugins available.
c8997124 443<p>
c924c2c6 444For example, a simple trace dump in text format is available with :
c8997124 445<PRE>
c924c2c6 446lttv -m textDump -t /tmp/trace
c8997124 447</PRE>
c8997124 448<p>
449See lttv -m textDump --help for detailed command line options of textDump.
c8997124 450<p>
c924c2c6 451It is, in the current state of the project, very useful to use "grep" on the
452text output to filter by specific event fields. You can later copy the timestamp
453of the events to the clipboard and paste them in the GUI by clicking on the
454bottom right label "Current time". Support for this type of filtering should
455be added to the filter module soon.
456
d58b406f 457<h3><a href="#TOChybrid" name="hybrid">Tracing in "Hybrid" mode</a></h3>
c8997124 458<p>
c924c2c6 459Starting from LTTng 0.5.105 and ltt-control 0.20, a new mode can be used :
460hybrid. It can be especially useful when studying big workloads on a long period
461of time.
c8997124 462<p>
c924c2c6 463When using this mode, the most important, low rate control information will be
464recorded during all the trace by lttd (i.e. process creation/exit). The high
465rate information (i.e. interrupt/traps/syscall entry/exit) will be kept in a
466flight recorder buffer (now named flight-channelname_X).
c8997124 467<p>
c924c2c6 468The following lttctl commands take an hybrid trace :
c8997124 469<p>
c924c2c6 470Create trace channel, start lttd on normal channels, start tracing:
c8997124 471<PRE>
c924c2c6 472lttctl -C -w /tmp/trace2 -o channel.kernel.overwrite=1 trace2
c8997124 473</PRE>
474<p>
c924c2c6 475Stop tracing, start lttd on flight recorder channels, destroy trace channels :
c8997124 476<PRE>
c924c2c6 477lttctl -D -w /tmp/trace2 trace2
c8997124 478</PRE>
479<p>
c924c2c6 480Each "overwrite" channel is flight recorder channel.
481
d58b406f 482
483<h3><a href="#TOCflight" name="flight">Tracing in flight recorder mode</a></h3>
c8997124 484<li>Flight recorder mode</li>
c8997124 485<p>
c924c2c6 486The flight recorder mode writes data into overwritten buffers for all channels,
487including control channels, except for the facilities tracefiles. It consists of
488setting all channels to "overwrite".
c8997124 489<p>
c924c2c6 490The following lttctl commands take a flight recorder trace :
c8997124 491<PRE>
c924c2c6 492lttctl -C -w /tmp/trace3 -o channel.all.overwrite=1 trace3
493...
494lttctl -D -w /tmp/trace3 trace3
c8997124 495</PRE>
c924c2c6 496
89aa576c 497<hr />
498
499
500<h2><a href="#TOCsection3" name="section3">Adding new instrumentations with the
501markers</a></h2>
502<p>
c924c2c6 503
47e2b195 504<h3><a href="#TOCkerneltp" name="kerneltp">Adding kernel
505instrumentation</a></h3>
506
89aa576c 507<p>
47e2b195 508See <a
509href="http://git.kernel.org/?p=linux/kernel/git/compudj/linux-2.6-lttng.git;a=blob;f=Documentation/markers.txt">Documentation/markers.txt</a>
510and <a
511href="http://git.kernel.org/?p=linux/kernel/git/compudj/linux-2.6-lttng.git;a=blob;f=Documentation/tracepoints.txt">Documentation/tracepoints.txt</a> in your kernel
c924c2c6 512tree.
47e2b195 513<p>
514Also see <a
515href="http://git.kernel.org/?p=linux/kernel/git/compudj/linux-2.6-lttng.git;a=tree;f=ltt/probes">ltt/probes/</a>
516for LTTng probe examples.
517
518<h3><a href="#TOCusertp" name="usertp">Adding userspace instrumentation</a></h3>
c924c2c6 519
305fd815 520Add new events to userspace programs with
521<a href="http://ltt.polymtl.ca/packages/">userspace markers packages</a>.
c924c2c6 522Get the latest markers-userspace-*.tar.bz2 and see the Makefile and examples. It
523allows inserting markers in executables and libraries, currently only on x86_32
524and x86_64.
e01a1ce1 525See <a
526href="http://ltt.polymtl.ca/packages/markers-userspace-0.5.tar.bz2">markers-userspace-0.5.tar.bz2</a> or more recent.
527
38b04cd7 528<p>
e01a1ce1 529Note that a new design document for a 3rd generation of tracepoint/marker-based
530userspace tracing is available at <a
531href="http://ltt.polymtl.ca/svn/trunk/lttv/doc/developer/ust.html">LTTng User-space Tracing
98dde887 532Design</a>. This new infrastructure is not yet implemented.
38b04cd7 533
534<p>
535The easy quick-and-dirty way to perform userspace tracing is currently to write
536an string to /mnt/debugfs/ltt/write_event. See <a
537href="#userspacetracing">Userspace tracing</a> in the
538installation for sources section of this document.
e01a1ce1 539
89aa576c 540<hr />
633bc4a3 541
89aa576c 542<h2><a href="#TOCsection4" name="section4">Creating Debian or RPM packages</a></h2>
543<p>
633bc4a3 544
98dde887 545<h3><a href="#TOCpkgdebian" name="pkgdebian">Create custom LTTV Debian packages</a></h3>
633bc4a3 546
89aa576c 547<PRE>
548Use : dpkg-buildpackage -rfakeroot
549</PRE>
550<p>
633bc4a3 551You should then have your LTTV .deb files created for your architecture.
552
98dde887 553<h3><a href="#TOCpkglttng" name="pkglttng">Create custom LTTng packages</a></h3>
89aa576c 554<p>
633bc4a3 555For building LTTng Debian packages :
89aa576c 556get the build tree with patches applies as explained in section 2.
633bc4a3 557
89aa576c 558<PRE>
633bc4a3 559make menuconfig (or xconfig or config) (customize your configuration)
560make-kpkg kernel_image
89aa576c 561</PRE>
562<p>
633bc4a3 563You will then see your freshly created .deb in /usr/src. Install it with
89aa576c 564<PRE>
633bc4a3 565dpkg -i /usr/src/(image-name).deb
89aa576c 566</PRE>
567<p>
633bc4a3 568Then, follow the section "Editing the system wide configuration" in section 2.
569
70a3fc43 570<hr />
633bc4a3 571
c924c2c6 572 </body>
573</html>
This page took 0.049646 seconds and 4 git commands to generate.