X-Git-Url: http://git.lttng.org/?a=blobdiff_plain;f=README;h=1bcd5b2d69bd9109bdb38236063470294b3f3d7d;hb=refs%2Fheads%2Fstable-2.1;hp=1fd49b68dea49d650b394c064a4c43f73a5bbabe;hpb=936e4abc765ebc360dc97fa13ec2905cabf109ac;p=lttng-modules.git diff --git a/README b/README index 1fd49b68..1bcd5b2d 100644 --- a/README +++ b/README @@ -1,7 +1,7 @@ LTTng 2.0 modules Mathieu Desnoyers -February 8, 2012 +April 6, 2012 LTTng 2.0 kernel modules build against a vanilla or distribution kernel, without need for additional patches. Other features: @@ -36,19 +36,57 @@ 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 -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. - -LTTng-modules depends on having kallsyms enabled in the kernel it is -built against. Ideally, if you want to have system call tracing, the -"Trace Syscalls" feature should be enabled too. +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). 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