lttng: toplevel Makefile and Kconfig

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
Mathieu Desnoyers 2011-11-28 07:42:25 -05:00 committed by Greg Kroah-Hartman
parent 1e8ab70d74
commit 3c46c44027
2 changed files with 68 additions and 0 deletions

View file

@ -0,0 +1,35 @@
config LTTNG
tristate "LTTng kernel tracer"
depends on TRACEPOINTS
help
The LTTng 2.0 Tracer Toolchain allows integrated kernel and
user-space tracing from a single user interface: the "lttng"
command. See http://lttng.org website for the "lttng-tools"
user-space tracer control tools package and the "babeltrace"
package for conversion of trace data to a human-readable
format.
LTTng features:
- System-wide tracing across kernel, libraries and
applications,
- Tracepoints, detailed syscall tracing (fast strace replacement),
Function tracer, CPU Performance Monitoring Unit (PMU) counters
and kprobes support,
- Have the ability to attach "context" information to events in the
trace (e.g. any PMU counter, pid, ppid, tid, comm name, etc). All
the extra information fields to be collected with events are
optional, specified on a per-tracing-session basis (except for
timestamp and event id, which are mandatory).
- Precise and fast clock sources with near cycle-level
timestamps,
- Efficient trace data transport:
- Compact Binary format with CTF,
- Per-core buffers ensures scalability,
- Fast-paths in caller context, amortized synchronization,
- Zero-copy using splice and mmap system calls, over disk,
network or consumed in-place,
- Multiple concurrent tracing sessions are supported,
- Designed to meet hard real-time constraints,
- Supports live streaming of the trace data,
- Produces CTF (Common Trace Format) natively (see
http://www.efficios.com/ctf).

View file

@ -0,0 +1,33 @@
#
# Makefile for the LTTng modules.
#
obj-m += ltt-ring-buffer-client-discard.o
obj-m += ltt-ring-buffer-client-overwrite.o
obj-m += ltt-ring-buffer-metadata-client.o
obj-m += ltt-ring-buffer-client-mmap-discard.o
obj-m += ltt-ring-buffer-client-mmap-overwrite.o
obj-m += ltt-ring-buffer-metadata-mmap-client.o
obj-m += ltt-relay.o
ltt-relay-objs := ltt-events.o ltt-debugfs-abi.o \
ltt-probes.o ltt-context.o \
lttng-context-pid.o lttng-context-procname.o \
lttng-context-prio.o lttng-context-nice.o \
lttng-context-vpid.o lttng-context-tid.o \
lttng-context-vtid.o lttng-context-ppid.o \
lttng-context-vppid.o lttng-calibrate.o
ifneq ($(CONFIG_HAVE_SYSCALL_TRACEPOINTS),)
ltt-relay-objs += lttng-syscalls.o
endif
ifneq ($(CONFIG_PERF_EVENTS),)
ltt-relay-objs += $(shell \
if [ $(VERSION) -ge 3 \
-o \( $(VERSION) -eq 2 -a $(PATCHLEVEL) -ge 6 -a $(SUBLEVEL) -ge 33 \) ] ; then \
echo "lttng-context-perf-counters.o" ; fi;)
endif
obj-m += probes/
obj-m += lib/