lttng: toplevel Makefile and Kconfig
authorMathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mon, 28 Nov 2011 12:42:25 +0000 (07:42 -0500)
committerGreg Kroah-Hartman <gregkh@suse.de>
Tue, 29 Nov 2011 01:05:07 +0000 (10:05 +0900)
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/staging/lttng/Kconfig [new file with mode: 0644]
drivers/staging/lttng/Makefile [new file with mode: 0644]

diff --git a/drivers/staging/lttng/Kconfig b/drivers/staging/lttng/Kconfig
new file mode 100644 (file)
index 0000000..34c4a4f
--- /dev/null
@@ -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).
diff --git a/drivers/staging/lttng/Makefile b/drivers/staging/lttng/Makefile
new file mode 100644 (file)
index 0000000..9ad4eb0
--- /dev/null
@@ -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/