X-Git-Url: http://git.liburcu.org/?a=blobdiff_plain;f=README;h=b7d8b9f8e6c271026a8f27e491455bff7fb77b59;hb=78062c794f19c91e88e371eb014ded5f2afe17bf;hp=f4e3368cec50bad0d3f88465d565193617d6abf5;hpb=65a8ae6b080e172f6c4f47bfb8f51b42ff6aaaa7;p=lttng-modules.git diff --git a/README b/README index f4e3368c..b7d8b9f8 100644 --- a/README +++ b/README @@ -1,9 +1,9 @@ -LTTng 2.0 modules +LTTng 2.x modules Mathieu Desnoyers -July 19, 2011 +March 29, 2013 -LTTng 2.0 kernel modules build against a vanilla or distribution kernel, without +LTTng 2.x kernel modules build against a vanilla or distribution kernel, without need for additional patches. Other features: - Produces CTF (Common Trace Format) natively, @@ -36,18 +36,58 @@ the kernel modules when needed. Use Babeltrace to print traces as a human-readable text log. These tools are available at the following URL: http://lttng.org/lttng2.0 -Please note that the LTTng-UST 2.0 (user-space tracing counterpart of LTTng 2.0) -is still in active development and not released yet. - -So far, it has been tested on vanilla Linux kernels 2.6.38, 2.6.39 and 3.0 (on -x86 32/64-bit, and powerpc 32-bit at the moment, build tested on ARM). It should -work fine with newer kernels and other architectures, but expect build issues -with kernels older than 2.6.36. The clock source currently used is the standard -gettimeofday (slower, less scalable and less precise than the LTTng 0.x clocks). -Support for LTTng 0.x clocks will be added back soon into LTTng 2.0. Please -note that lttng-modules 2.0 can build on a Linux kernel patched with the LTTng -0.x patchset, but the lttng-modules 2.0 replace the lttng-modules 0.x, so both -tracers cannot be installed at the same time for a given kernel version. +So far, it has been tested on vanilla Linux kernels 2.6.38, 2.6.39, 3.0, +3.1, 3.2, 3.3 (on x86 32/64-bit, and powerpc 32-bit at the moment, build +tested on ARM), 3.4, 3.5, 3.8, 3.9-rc on x86 64-bit. Kernels 2.6.32 to +2.6.34 need up to 3 patches applied (refer to linux-patches within the +lttng-modules tree). It should work fine with newer kernels and other +architectures, but expect build issues with kernels older than 2.6.36. +The clock source currently used is the standard gettimeofday (slower, +less scalable and less precise than the LTTng 0.x clocks). Support for +LTTng 0.x clocks will be added back soon into LTTng 2.0. Please note +that lttng-modules 2.0 can build on a Linux kernel patched with the +LTTng 0.x patchset, but the lttng-modules 2.0 replace the lttng-modules +0.x, so both tracers cannot be installed at the same time for a given +kernel version. + + +* Kernel config options required + +CONFIG_MODULES: required + * Kernel modules support. +CONFIG_KALLSYMS: required + * See wrapper/ files. This is necessary until the few required missing + symbols are exported to GPL modules from mainline. +CONFIG_HIGH_RES_TIMERS: required + * Needed for LTTng 2.0 clock source. +CONFIG_TRACEPOINTS: required + kernel tracepoint instrumentation + * Enabled as side-effect of any of the perf/ftrace/blktrace + instrumentation features. + + +* Kernel config options supported (optional) + +The following kernel configuration options will affect the features +available from LTTng: + + +CONFIG_HAVE_SYSCALL_TRACEPOINTS: + system call tracing + lttng enable-event -k --syscall + lttng enable-event -k -a +CONFIG_PERF_EVENTS: + performance counters + lttng add-context -t perf:* +CONFIG_EVENT_TRACING: + needed to allow block layer tracing +CONFIG_KPROBES: + Dynamic probe. + lttng enable-event -k --probe ... +CONFIG_KRETPROBES: + Dynamic function entry/return probe. + lttng enable-event -k --function ... + * Note about Perf PMU counters support