X-Git-Url: http://git.liburcu.org/?a=blobdiff_plain;f=LTTngManual.html;h=10978001793975f4867738ff5f0bf34a4bcfa3dd;hb=1aeb0ff5ba3ece6906cb4a64e3b2836d6b8e2c12;hp=b46ae9a11590c161c23dac09a1964b34f145aac6;hpb=2eec045bcb4aeb474c751934be8ac1829c4be330;p=lttv.git
diff --git a/LTTngManual.html b/LTTngManual.html
index b46ae9a1..10978001 100644
--- a/LTTngManual.html
+++ b/LTTngManual.html
@@ -8,7 +8,7 @@
Linux Trace Toolkit Next Generation Manual
Author : Mathieu Desnoyers, September 2005
-Last update : January 21st, 2009
+Last update : September 3, 2010
(originally known as the LTTng QUICKSTART guide)
Table of Contents
@@ -76,10 +76,10 @@ packages from the LTTng and LTTV sources.
These operations are made for installing the LTTng 0.86 tracer on a linux 2.6.X
kernel. You will also find instructions for installation of LTTV 0.12.x : the
Linux Trace Toolkit Viewer.
-To see the list of compatibilities between LTTng, ltt-control, LTTV, please
-refer to :
+To see the list of compatibilities between the LTTng kernel patchset, LTTng
+modules, ltt-control, LTTV, please refer to :
LTTng+LTTV versions compatibility
+href="http://lttng.org/cgi-bin/gitweb.cgi?p=lttv.git;a=blob_plain;f=doc/developer/lttng-lttv-compatibility.html;hb=HEAD">LTTng+LTTV versions compatibility
The ongoing work had the Linux Kernel Markers integrated in the mainline Linux
kernel since Linux 2.6.24 and the Tracepoints since 2.6.28. In its current
@@ -90,7 +90,6 @@ kernel.
-
LTTng, UST and LTTV are developed by an open community. LTTng is released under
a dual Gnu LGPLv2.1/GPLv2 license, except for very few kernel-specific files
@@ -99,6 +98,9 @@ which are derived work from the Linux kernel.
LTTV is available under the Gnu GPLv2. The low-level LTTV trace reading library
is released under Gnu LGPLv2.1.
+The Eclipse LTTng trace analysis tool is released under the EPL and uses the
+LTTV trace reading library (LGPLv2.1).
+
The UST (Userspace Tracing) and the Userspace RCU libraries are released under
the LGPLv2.1 license, which allows linking with non-GPL (BSD, proprietary...)
applications. The associated headers are released under MIT-style/BSD-style
@@ -106,10 +108,7 @@ licenses.
Please refer to each particular file licensing for details.
-
-
-
LTTng :
x86 32/64 bits
@@ -175,7 +174,7 @@ gtk 2.4 or better development libraries
(Fedora : gtk2, gtk2-devel)
note : For Fedora users : this might require at least core 3 from Fedora,
or you might have to compile your own GTK2 library.
-glib 2.4 or better development libraries
+glib 2.16 or better development libraries
(Debian : libglib2.0-0, libglib2.0-dev)
(Fedora : glib2, glib2-devel)
libpopt development libraries
@@ -195,8 +194,7 @@ libc6 development librairies
See the list of compatibilities between LTTng, ltt-control and LTTV at :
LTTng+LTTV
-versions compatibility.
+href="http://lttng.org/cgi-bin/gitweb.cgi?p=lttv.git;a=blob_plain;f=doc/developer/lttng-lttv-compatibility.html;hb=HEAD">LTTng+LTTV versions compatibility.
@@ -205,9 +203,11 @@ versions compatibility.
su -
mkdir /usr/src/lttng
cd /usr/src/lttng
-(see http://ltt.polymtl.ca/lttng for package listing)
-wget http://ltt.polymtl.ca/lttng/patch-2.6.X-lttng-0.x.xx.tar.bz2
+(see http://lttng.org/files/lttng for package listing)
+wget http://lttng.org/files/lttng/patch-2.6.X-lttng-0.x.xx.tar.bz2
+wget http://lttng.org/files/lttng/lttng-modules-0.x.tar.bz2
bzip2 -cd patch-2.6.X-lttng-0.x.xx.tar.bz2 | tar xvof -
+bzip2 -cd lttng-modules-0.x.tar.bz2 | tar xvof -
@@ -233,7 +233,7 @@ mv linux-2.6.X linux-2.6.X-lttng-0.x.xx
su -
cd /usr/src/linux-2.6.X-lttng-0.x.xx
make menuconfig (or make xconfig or make config)
- Select the < Help > button if you are not familiar with kernel
+ Select the < Help > button if you are not familiar with kernel
configuration.
Items preceded by [*] means they has to be built into the kernel.
Items preceded by [M] means they has to be built as modules.
@@ -242,23 +242,10 @@ make menuconfig (or make xconfig or make config)
Select the following options :
[*] Prompt for development and/or incomplete code/drivers
[*] Activate markers
- [*] Activate userspace markers ABI (experimental, optional)
[*] Immediate value optimization (optional)
- [*] Linux Trace Toolkit Next Generation (LTTng) --->
- or <*> Compile lttng tracing probes
- or <*> Linux Trace Toolkit High-speed Lockless Data Relay
- or <*> Linux Trace Toolkit Lock-Protected Data Relay
- or <*> Linux Trace Toolkit Serializer
- or <*> Linux Trace Toolkit Marker Control
- or <*> Linux Trace Toolkit Tracer
- [*] Align Linux Trace Toolkit Traces
- or <*> Support logging events from userspace
- [*] Support trace extraction from crash dump
- or <*> Linux Trace Toolkit Trace Controller
- or <*> Linux Trace Toolkit State Dump
- Select
- Select
- Select
+ Select <Exit>
+ Select <Exit>
+ Select <Yes>
make
make modules_install
(if necessary, create a initrd with mkinitrd or your preferate alternative)
@@ -284,6 +271,22 @@ Select the Linux 2.6.X-lttng-0.x.xx kernel in your boot loader.
--
+
+
+
+
+su -
+cd /usr/src/lttng/lttng-modules-0.x
+KERNELDIR=/usr/src/linux-2.6.X-lttng-0.x.xx make
+KERNELDIR=/usr/src/linux-2.6.X-lttng-0.x.xx make modules_install
+
+Optionally, make can be prefixed with tracer options:
+
+EXTRA_CFLAGS="-DLTT_DEBUG_EVENT_SIZE" make
+EXTRA_CFLAGS="-DLTT_VMCORE" make
+EXTRA_CFLAGS="-DLTT_DEBUG_EVENT_SIZE -DLTT_VMCORE" make
+
+
@@ -314,7 +317,6 @@ compile statically, you may not need to issue all these commands.
modprobe ltt-trace-control
modprobe ltt-marker-control
modprobe ltt-tracer
-modprobe ltt-serialize
modprobe ltt-relay
modprobe ipc-trace
modprobe kernel-trace
@@ -325,6 +327,7 @@ modprobe jbd2-trace
modprobe ext4-trace
modprobe syscall-trace
modprobe trap-trace
+modprobe block-trace
#if locking tracing is wanted, uncomment the following
#modprobe lockdep-trace
@@ -345,7 +348,6 @@ cp /etc/modules /etc/modules.bkp
echo ltt-trace-control >> /etc/modules
echo ltt-marker-control >> /etc/modules
echo ltt-tracer >> /etc/modules
-echo ltt-serialize >> /etc/modules
echo ltt-relay >> /etc/modules
echo ipc-trace >> /etc/modules
echo kernel-trace >> /etc/modules
@@ -370,7 +372,7 @@ same name as the ltt-control kernel module, they are *not* the same thing.)
su -
cd /usr/src
-wget http://ltt.polymtl.ca/lttng/ltt-control-0.x-xxxx2006.tar.gz
+wget http://lttng.org/files/lttng/ltt-control-0.x-xxxx2006.tar.gz
gzip -cd ltt-control-0.x-xxxx2008.tar.gz | tar xvof -
cd ltt-control-0.x-xxxx2006
(refer to README to see the development libraries that must be installed on you
@@ -386,12 +388,12 @@ ldconfig
Make sure you selected the kernel menuconfig option :
- or <*> Support logging events from userspace
+ <M> or <*> Support logging events from userspace
And that the ltt-userspace-event kernel module is loaded if selected as a
module.
Simple userspace tracing is available through
-echo "some text to record" > /mnt/debugfs/ltt/write_event
+echo "some text to record" > /mnt/debugfs/ltt/write_event
It will appear in the trace under event :
channel : userspace
@@ -405,7 +407,7 @@ or different from the visualisation machine)
su -
cd /usr/src
-wget http://ltt.polymtl.ca/packages/lttv-0.x.xx-xxxx2008.tar.gz
+wget http://lttng.org/files/packages/lttv-0.x.xx-xxxx2008.tar.gz
gzip -cd lttv-0.x.xx-xxxx2008.tar.gz | tar xvof -
cd lttv-0.x.xx-xxxx2008
(refer to README to see the development libraries that must be installed on your
@@ -544,18 +546,16 @@ for LTTng probe examples.
Add new events to userspace programs with
-userspace markers packages.
+userspace markers packages.
Get the latest markers-userspace-*.tar.bz2 and see the Makefile and examples. It
allows inserting markers in executables and libraries, currently only on x86_32
and x86_64.
See markers-userspace-0.5.tar.bz2 or more recent.
+href="http://lttng.org/files/packages/markers-userspace-0.5.tar.bz2">markers-userspace-0.5.tar.bz2 or more recent.
-Note that a new design document for a 3rd generation of tracepoint/marker-based
-userspace tracing is available at LTTng User-space Tracing
-Design. This new infrastructure is not yet implemented.
+Note that tracepoint/marker-based userspace tracing is available at LTTng User-space Tracer (UST).
The easy quick-and-dirty way to perform userspace tracing is currently to write