lttng-tools.git
10 years agoInit the kconsumerd error socket
Julien Desfossez [Thu, 25 Aug 2011 21:51:38 +0000 (17:51 -0400)] 
Init the kconsumerd error socket

The kconsumerd_error_socket must be initialised to a negative value when
we create the context, otherwise we don't know if it is defined or just
random.

Signed-off-by: Julien Desfossez <julien.desfossez@polymtl.ca>
10 years agoUpdate version to 2.0-pre12 v2.0-pre12
David Goulet [Thu, 25 Aug 2011 21:36:04 +0000 (17:36 -0400)] 
Update version to 2.0-pre12

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
10 years agoFix missing header in Makefile.am
David Goulet [Thu, 25 Aug 2011 21:34:59 +0000 (17:34 -0400)] 
Fix missing header in Makefile.am

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
10 years agoAdd support for UST application registration
David Goulet [Tue, 23 Aug 2011 17:56:15 +0000 (13:56 -0400)] 
Add support for UST application registration

This is a big commit ;)

Introduce two new threads and one almost rewritten. The first thread
added is the one that manage UST registration. This thread is *very*
lightweight and, basically, receive the registration request, queue it
in a lock free queue and wake up the dispatch thread (second new thread)
using a N wakers / 1 waiters futex scheme.

This dispatch thread will then dequeue and notify the application thread
(that manages application registration and monitor UST sockets). The
notification consist of sending the dequeued node (command) to the
application thread pipe where the application thread is blocked on
poll().

For now, the registration is handle meaning that the application will
get added to the session daemon internal data structures, the daemon
will send a REGISTER_DONE command to the application and, finally, end
the communication by waiting for the UST reply of the previous command.

Acked-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
10 years agoAdding LTTng UST 2.0 ABI
David Goulet [Tue, 23 Aug 2011 17:49:04 +0000 (13:49 -0400)] 
Adding LTTng UST 2.0 ABI

Taken from the git head of UST.

Branch: lttng-ust-2.0
Commit id: 66c7df9e6c8b4e2ea609a7e3028346ada35ddaec

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
10 years agoAdd NULL pointer check
David Goulet [Thu, 25 Aug 2011 19:42:20 +0000 (15:42 -0400)] 
Add NULL pointer check

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
10 years agoFix AUTHORS
David Goulet [Thu, 25 Aug 2011 19:21:18 +0000 (15:21 -0400)] 
Fix AUTHORS

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
10 years agoFix headers include and rename kernctl.h header
David Goulet [Thu, 25 Aug 2011 18:12:04 +0000 (14:12 -0400)] 
Fix headers include and rename kernctl.h header

Move kernctl.h to lttng-kernel-ctl.h into the include directory.

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
10 years agoCleanup comments and bad indent
David Goulet [Tue, 23 Aug 2011 18:24:42 +0000 (14:24 -0400)] 
Cleanup comments and bad indent

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
10 years agothread_manage_apps: update and comment socket handling
Mathieu Desnoyers [Sat, 20 Aug 2011 18:11:00 +0000 (14:11 -0400)] 
thread_manage_apps: update and comment socket handling

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
10 years agoMissing -k option in quickstart guide
David Goulet [Fri, 19 Aug 2011 17:36:50 +0000 (13:36 -0400)] 
Missing -k option in quickstart guide

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
10 years agoFix incorrect thread cleanup on blocking recv()
David Goulet [Wed, 17 Aug 2011 20:23:35 +0000 (16:23 -0400)] 
Fix incorrect thread cleanup on blocking recv()

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
10 years agoFix tracing group spawning the session daemon
David Goulet [Wed, 17 Aug 2011 20:15:01 +0000 (16:15 -0400)] 
Fix tracing group spawning the session daemon

The check was incorrect for the session daemon path in the liblttngctl.

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
10 years agoAdd lttng-modules detection for tests
David Goulet [Wed, 17 Aug 2011 15:49:37 +0000 (11:49 -0400)] 
Add lttng-modules detection for tests

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
10 years agoCallbacks on receive and update FD
Julien Desfossez [Tue, 16 Aug 2011 23:25:04 +0000 (19:25 -0400)] 
Callbacks on receive and update FD

The user of the lib can now take control over a new FD or the update
operation of an existing FD.
Opening the output tracefile is now the responsiblity of the user
and not the library itself.

[ Edit by Mathieu Desnoyers: comment and teardown cleanups ]

Signed-off-by: Julien Desfossez <julien.desfossez@polymtl.ca>
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
10 years agoParametrize enable-channel help
Mathieu Desnoyers [Tue, 16 Aug 2011 20:46:27 +0000 (16:46 -0400)] 
Parametrize enable-channel help

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
10 years agoFunction to handle snapshots in liblttngkconsumerd
Julien Desfossez [Tue, 16 Aug 2011 17:57:20 +0000 (13:57 -0400)] 
Function to handle snapshots in liblttngkconsumerd

This patch adds the wrappers to take a snapshot for a specific FD and
to retrieve the produced position.
Also refactor the sync tracefile operation.

Signed-off-by: Julien Desfossez <julien.desfossez@polymtl.ca>
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
10 years agoSet default number of metadata subbuffers to 2
Mathieu Desnoyers [Tue, 16 Aug 2011 17:04:22 +0000 (13:04 -0400)] 
Set default number of metadata subbuffers to 2

LTTng uses a wait/wakeup scheme when the metadata buffer is full, so
there is no need to waste memory.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
10 years agoTurn consumer "normal" error into debug statement (with comment)
Mathieu Desnoyers [Tue, 16 Aug 2011 16:56:07 +0000 (12:56 -0400)] 
Turn consumer "normal" error into debug statement (with comment)

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
10 years agoSend data to kconsumerd before tracing start
David Goulet [Tue, 16 Aug 2011 14:24:51 +0000 (10:24 -0400)] 
Send data to kconsumerd before tracing start

The metadata buffer of the kernel can get overflowed between the start
of the kernel consumer and the kernel start session. Sending the fds
before tracing start fix that problem.

Fixed-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
10 years agoModify default kernel channel size/number
Mathieu Desnoyers [Tue, 16 Aug 2011 13:55:30 +0000 (09:55 -0400)] 
Modify default kernel channel size/number

Too small kernel channels (4kB) leads to unwelcome delay at trace
indexing and adds buffer switch overhead. Use a default closer to the
0.x LTTng for buffer size:

256kB subbuffer
4 subbuffers/buffer
for 1MB per channel per CPU in normal tracing mode, and 1MB + 256kB per
channel per CPU in overwrite mode.

We currently plan to still use 4kB * 8 sub-buffers for UST because we
allocate these buffers per process, which makes memory consumption more
of a concern.

The metadata channel is kept small (4kB), but we keep a number of
subbuffer of 8 for now, as the behavior between "start" and spawning the
consumer is in the wrong order: we will need to spawn the consumer
before start is performed, because "start" returns blocks for 10 seconds
and returns an error if the buffers are too small to write metadata (and
they are not consumed).

Also fix a memory leak in init_default_channel.

process_client_msg() now uses a check / alloc / failure for channel
lookup rather than an endless retry, which could have led to denial of
service in case of internal error.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
10 years agokconsumerd: fix infinite loop in splice handling of subbuf larger than 4k
Mathieu Desnoyers [Tue, 16 Aug 2011 13:18:36 +0000 (09:18 -0400)] 
kconsumerd: fix infinite loop in splice handling of subbuf larger than 4k

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
10 years agoAdd kernel events tests
David Goulet [Mon, 15 Aug 2011 22:16:07 +0000 (18:16 -0400)] 
Add kernel events tests

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
10 years agoUpdate tests EXTRA_DIST
David Goulet [Mon, 15 Aug 2011 20:21:44 +0000 (16:21 -0400)] 
Update tests EXTRA_DIST

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
10 years agoAdd basic kernel tracing tests
David Goulet [Mon, 15 Aug 2011 20:18:34 +0000 (16:18 -0400)] 
Add basic kernel tracing tests

This test is the basic use case of kernel tracing by creating a session,
enabling all events, tracing and destroying the session.

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
10 years agoContinue parsing options for add-context on error
David Goulet [Mon, 15 Aug 2011 20:14:45 +0000 (16:14 -0400)] 
Continue parsing options for add-context on error

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
10 years agoAdd runall.sh test script to distribution
David Goulet [Mon, 15 Aug 2011 17:00:11 +0000 (13:00 -0400)] 
Add runall.sh test script to distribution

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
10 years agoRename and export lib kernel consumer
David Goulet [Sun, 14 Aug 2011 21:24:40 +0000 (17:24 -0400)] 
Rename and export lib kernel consumer

The old liblttkconsumerd is renamed to liblttngkconsumerd and exported
publicly having the public header "lttng/lttng-kconsumerd.h".

To link with this library, use -llttngkconsumerd.

Every public functions now begins with the "lttng_" prefix to fit the
lttng public namespace.

Comments are changed also to fit 80 lines standard and the rest of the
git tree comments.

This complete renaming was motivated by the new tool made by Julien
Desfossez called 'lttngtop' which uses the kernel consumer library to
create a custom consumer. More works will add consumers in the lttv and
babeltrace projects.

Please see lttng.org to learn about lttngtop.

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
10 years agoKconsumerd use the output parameter
Julien Desfossez [Sun, 14 Aug 2011 15:14:14 +0000 (11:14 -0400)] 
Kconsumerd use the output parameter

Signed-off-by: Julien Desfossez <julien.desfossez@polymtl.ca>
10 years agoFix bad channel output when sending to consumer
David Goulet [Sat, 13 Aug 2011 17:49:19 +0000 (13:49 -0400)] 
Fix bad channel output when sending to consumer

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
10 years agoPermit custom consumer registration to a session
David Goulet [Fri, 12 Aug 2011 20:26:18 +0000 (16:26 -0400)] 
Permit custom consumer registration to a session

Introduce the new API call lttng_register_consumer(...).

By giving a lttng_handle and a socket path, the fds will be sent to that
socket for the specific tracing session and domain. No kernel consumer
will be spawned by the session daemon for that session.

At this point, only kernel consumer is supported.

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
10 years agoFix missing file for make dist
David Goulet [Fri, 12 Aug 2011 21:56:34 +0000 (17:56 -0400)] 
Fix missing file for make dist

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
10 years agoFix copy_string dst validation
David Goulet [Fri, 12 Aug 2011 21:00:33 +0000 (17:00 -0400)] 
Fix copy_string dst validation

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
10 years agoAdd tar and bz2 file to gitignore
David Goulet [Fri, 12 Aug 2011 18:43:23 +0000 (14:43 -0400)] 
Add tar and bz2 file to gitignore

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
10 years agoUpdate version to 2.0-pre11 v2.0-pre11
David Goulet [Fri, 12 Aug 2011 18:34:55 +0000 (14:34 -0400)] 
Update version to 2.0-pre11

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
10 years agoFix makefile
David Goulet [Fri, 12 Aug 2011 18:38:01 +0000 (14:38 -0400)] 
Fix makefile

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
10 years agoChange lttng API to use a lttng_handle
David Goulet [Fri, 12 Aug 2011 18:12:55 +0000 (14:12 -0400)] 
Change lttng API to use a lttng_handle

Introduce the lttng_handle structure that is now used by the API
containing the session name and lttng domain.

This removes multiple static variables of the library and makes it safe
for multithread tool to use the library.

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
10 years agoCleanup mmap consuming
Julien Desfossez [Fri, 12 Aug 2011 14:45:28 +0000 (10:45 -0400)] 
Cleanup mmap consuming

Only one mmap call per buffer, once the first mmap is done, we use the
offset to know where to start consuming the data.

When we receive the FD and its output mode is mmap, we mmap the buffer,
when it is closing, we munmap it.

Removed the manual padding handling because the kernel already exposes a
padded subbuffer.

Also updated the check of the return code of
kconsumerd_consumerd_recv_fd to be consistent with the rest of the code,
we are in error when it's < 0 not <= 0.

Acked-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Signed-off-by: Julien Desfossez <julien.desfossez@polymtl.ca>
10 years agoRegister the consuming function and add a library context
Julien Desfossez [Fri, 12 Aug 2011 13:36:47 +0000 (09:36 -0400)] 
Register the consuming function and add a library context

The init function of the library now takes a function as argument to
allow a consumer using the library to control the function to be called
when data is ready in a buffer.

The kconsumerd_on_read_subbuffer_mmap and
kconsumerd_on_read_subbuffer_splice are now exported to allow a consumer
to use them directly if needed.

Also the library has now a context, where all local parameters are
registered instead of static variables. That way, we can have multiple
callers using the library within the same process. Only the flag
indicating that all fds are closed remain global to the library and
shared among callers.

Acked-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Signed-off-by: Julien Desfossez <julien.desfossez@polymtl.ca>
10 years agoAdd doc to liblttkconsumerd.h
Julien Desfossez [Fri, 12 Aug 2011 13:36:46 +0000 (09:36 -0400)] 
Add doc to liblttkconsumerd.h

Acked-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Signed-off-by: Julien Desfossez <julien.desfossez@polymtl.ca>
10 years agoChange kernel traces output directory
David Goulet [Fri, 12 Aug 2011 14:51:32 +0000 (10:51 -0400)] 
Change kernel traces output directory

Adds the kernel/ directory level for kernel traces.

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
10 years agoPrivatize lttng-sessiond-comm
Mathieu Desnoyers [Thu, 11 Aug 2011 22:16:14 +0000 (18:16 -0400)] 
Privatize lttng-sessiond-comm

With the intent of keeping libust, which is really an instrumentation
library, stand-alone, we prefer not to make it depend on a library from
the lttng-tools tree. Therefore, we privatize lttng-sessiond-comm, and
both package will interact through a communication protocol rather than
a shared library.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
10 years agoHeader cleanup and alignment fix
David Goulet [Thu, 11 Aug 2011 16:00:47 +0000 (12:00 -0400)] 
Header cleanup and alignment fix

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
10 years agoFix wrong message with lttng list
David Goulet [Thu, 11 Aug 2011 15:47:38 +0000 (11:47 -0400)] 
Fix wrong message with lttng list

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
10 years agokernel_list_events: fix file descriptor leak
Mathieu Desnoyers [Wed, 10 Aug 2011 20:07:51 +0000 (16:07 -0400)] 
kernel_list_events: fix file descriptor leak

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
10 years agoMerge branch 'master' of ssh://git.lttng.org/home/git/lttng-tools
Mathieu Desnoyers [Wed, 10 Aug 2011 21:54:45 +0000 (17:54 -0400)] 
Merge branch 'master' of ssh://git.lttng.org/home/git/lttng-tools

10 years agoReplace underscores of enable-channel options
David Goulet [Wed, 10 Aug 2011 21:24:05 +0000 (17:24 -0400)] 
Replace underscores of enable-channel options

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
10 years agoVersion 2.0-pre10 v2.0-pre10
Mathieu Desnoyers [Tue, 9 Aug 2011 00:57:40 +0000 (20:57 -0400)] 
Version 2.0-pre10

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
10 years agoRemove "lib" prefix from .c/.h file names
Mathieu Desnoyers [Tue, 9 Aug 2011 00:46:35 +0000 (20:46 -0400)] 
Remove "lib" prefix from .c/.h file names

This is uncommon. "lib" prefix is only needed for the library name.
Let's keep the lib prefix for source tree directory names for clarity
though.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
10 years agoRename liblttsessiondcomm to liblttng-sessiond-comm, install it.
Mathieu Desnoyers [Tue, 9 Aug 2011 00:41:06 +0000 (20:41 -0400)] 
Rename liblttsessiondcomm to liblttng-sessiond-comm, install it.

Install this library in the system, for UST.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
10 years agoHeader Alignment Cleanups
Mathieu Desnoyers [Tue, 9 Aug 2011 00:25:24 +0000 (20:25 -0400)] 
Header Alignment Cleanups

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
10 years agoMove LTTNG_RUNDIR declaration to lttng/lttng-sessiond-comm.h
Mathieu Desnoyers [Tue, 9 Aug 2011 00:18:19 +0000 (20:18 -0400)] 
Move LTTNG_RUNDIR declaration to lttng/lttng-sessiond-comm.h

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
10 years agoheader cleanup
Mathieu Desnoyers [Tue, 9 Aug 2011 00:15:34 +0000 (20:15 -0400)] 
header cleanup

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
10 years agoFix all strncpy() usage: need to set a final \0 character at the end
Mathieu Desnoyers [Tue, 9 Aug 2011 00:12:46 +0000 (20:12 -0400)] 
Fix all strncpy() usage: need to set a final \0 character at the end

strncpy does not necessarily set the last character to the null
terminating character. It must be done explicitly in case of overflow.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
10 years agoInstall lttng/lttng-sessiond-comm.h into system
Mathieu Desnoyers [Mon, 8 Aug 2011 23:54:04 +0000 (19:54 -0400)] 
Install lttng/lttng-sessiond-comm.h into system

This header is needed by UST 2.0 for communication with the sessiond.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
10 years agoFix format string warnings
Simon Marchi [Mon, 8 Aug 2011 19:42:34 +0000 (15:42 -0400)] 
Fix format string warnings

Print size_t as %zu.

Signed-off-by: Simon Marchi <simon.marchi@polymtl.ca>
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
10 years agoCleanup libkernelctl API
Mathieu Desnoyers [Mon, 8 Aug 2011 17:58:29 +0000 (13:58 -0400)] 
Cleanup libkernelctl API

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
10 years agoVersion 2.0-pre9 v2.0-pre9
Mathieu Desnoyers [Mon, 8 Aug 2011 16:08:46 +0000 (12:08 -0400)] 
Version 2.0-pre9

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
10 years agoDon't print connect error upon failure
Mathieu Desnoyers [Mon, 8 Aug 2011 16:07:40 +0000 (12:07 -0400)] 
Don't print connect error upon failure

Used in normal operation, should not print error.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
10 years agoVersion 2.0-pre8 v2.0-pre8
Mathieu Desnoyers [Mon, 8 Aug 2011 15:40:41 +0000 (11:40 -0400)] 
Version 2.0-pre8

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
10 years agoCleanup compiler warnings
Mathieu Desnoyers [Mon, 8 Aug 2011 15:08:29 +0000 (11:08 -0400)] 
Cleanup compiler warnings

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
10 years agoAllow tracing group users to read trace files they generated
Mathieu Desnoyers [Mon, 8 Aug 2011 06:13:27 +0000 (02:13 -0400)] 
Allow tracing group users to read trace files they generated

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
10 years agoFix handling of sessiond respawn after a SIGKILL
Mathieu Desnoyers [Mon, 8 Aug 2011 05:22:00 +0000 (01:22 -0400)] 
Fix handling of sessiond respawn after a SIGKILL

Checking if the sessiond responds to connect() lets lttng / ltt-sessiond
check correctly if the socket files are stale files or actively used.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
10 years agoSafe list iteration in kconsumerd: protect against free()
Mathieu Desnoyers [Mon, 8 Aug 2011 04:31:41 +0000 (00:31 -0400)] 
Safe list iteration in kconsumerd: protect against free()

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
10 years agoAdd --verbose-kconsumerd option to sessiond
Mathieu Desnoyers [Mon, 8 Aug 2011 04:29:01 +0000 (00:29 -0400)] 
Add --verbose-kconsumerd option to sessiond

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
10 years agoltt-sessiond teardown cleanup
Mathieu Desnoyers [Mon, 8 Aug 2011 04:03:04 +0000 (00:03 -0400)] 
ltt-sessiond teardown cleanup

ltt-sessiond now kills (SIGTERM) the kconsumerd before exiting, so the
LTTng module unload succeeds. Previously, the kconsumerd was still
holding a reference on ltt-relay.ko -- it was only being released after
ltt-sessiond closed its communication socket with kconsumerd.

Now, all the teardown actually wakes each thread, getting them to
return, and main() joins each of them before calling cleanup().
Previously, we had no guarantee that threads would not run concurrently
with cleanup() executed from the signal handler.

It would still be good to audit _each_ read call so we ensure that they
are performed on O_NONBLOCK fcntl fds (as we did in the kconsumerd), so
all the blocking is done in a poll() call, which can be woken up by the
sessiond termination file descriptor too (from the signal handler).
Failure to respect this could lead to races where sessiond blocks on a
file descriptor and never really honour the signal for a thread, thus
leading to blocking of the main() thread on a join.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
10 years agoVersion 2.0-pre7 v2.0-pre7
Mathieu Desnoyers [Sat, 6 Aug 2011 18:57:08 +0000 (14:57 -0400)] 
Version 2.0-pre7

10 years agoAdd calibrate.txt
Mathieu Desnoyers [Sat, 6 Aug 2011 18:21:51 +0000 (14:21 -0400)] 
Add calibrate.txt

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
10 years agomkdir_recursive: keep original prototype
Mathieu Desnoyers [Sat, 6 Aug 2011 18:04:46 +0000 (14:04 -0400)] 
mkdir_recursive: keep original prototype

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
10 years agoCleanup mkdir_recursive indent
Mathieu Desnoyers [Sat, 6 Aug 2011 17:55:23 +0000 (13:55 -0400)] 
Cleanup mkdir_recursive indent

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
10 years agoMake "please specify tracer" comment more helpful
Mathieu Desnoyers [Sat, 6 Aug 2011 15:05:04 +0000 (11:05 -0400)] 
Make "please specify tracer" comment more helpful

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
10 years agoAdd calibrate command
Mathieu Desnoyers [Sat, 6 Aug 2011 06:33:48 +0000 (02:33 -0400)] 
Add calibrate command

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
10 years agoFix module unload order
Mathieu Desnoyers [Sat, 6 Aug 2011 05:50:23 +0000 (01:50 -0400)] 
Fix module unload order

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
10 years agoUnload lttng modules when sessiond quits
Mathieu Desnoyers [Fri, 5 Aug 2011 20:28:01 +0000 (16:28 -0400)] 
Unload lttng modules when sessiond quits

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
10 years agoRemove all remaining sessiond kernel command
David Goulet [Thu, 4 Aug 2011 01:43:39 +0000 (21:43 -0400)] 
Remove all remaining sessiond kernel command

All command now uses the lttng_domain

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
10 years agoChange disable event command to be per domain
David Goulet [Thu, 4 Aug 2011 01:21:12 +0000 (21:21 -0400)] 
Change disable event command to be per domain

Removes LTTNG_KERNEL_DISABLE_EVENT and use a generic command based on
lttng domain.

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
10 years agoRemove path and session from session message
David Goulet [Thu, 4 Aug 2011 01:03:27 +0000 (21:03 -0400)] 
Remove path and session from session message

Replace the two by a lttng_session structure.

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
10 years agoChange disable channel command to be per domain
David Goulet [Thu, 4 Aug 2011 00:55:02 +0000 (20:55 -0400)] 
Change disable channel command to be per domain

Removes LTTNG_KERNEL_DISABLE_CHANNEL and use a generic command based on
lttng domain.

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
10 years agoRewrite the add context command of sessiond
David Goulet [Wed, 3 Aug 2011 22:50:13 +0000 (18:50 -0400)] 
Rewrite the add context command of sessiond

Introduce context.c/.h which contains code to manage lttng context.

The add context command is now based on the lttng domain removing the
LTTNG_KERNEL_ADD_CONTEXT to simply LTTNG_ADD_CONTEXT.

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
10 years agoRemove session daemon kernel list events command
David Goulet [Wed, 3 Aug 2011 21:23:56 +0000 (17:23 -0400)] 
Remove session daemon kernel list events command

Replace this command by list tracepoints and use the domain for listing.

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
10 years agoImprove protection around strncpy and memcpy calls
David Goulet [Wed, 3 Aug 2011 21:11:44 +0000 (17:11 -0400)] 
Improve protection around strncpy and memcpy calls

Add copy_string which check for null pointer and add the null terminated
byte by default.

All pointer pass to memcpy are checked for null value.

All lttng_domain pointer are checked also for null value.

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
10 years agoChange list kernel events to list tracepoints
David Goulet [Wed, 3 Aug 2011 20:28:21 +0000 (16:28 -0400)] 
Change list kernel events to list tracepoints

Remove lttng_list_kernel_events to lttng_list_tracepoints(domain).

Make it generic to lttng domain and specific for tracepoints which are
static instrumentation.

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
10 years agoFix uninitialized variable
David Goulet [Wed, 3 Aug 2011 20:06:55 +0000 (16:06 -0400)] 
Fix uninitialized variable

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
10 years agoImprove the lttng list feature
David Goulet [Wed, 3 Aug 2011 19:56:54 +0000 (15:56 -0400)] 
Improve the lttng list feature

Introduce three new functions to the public API which are
lttng_list_channels, lttng_list_events and lttng_list_domains.

Also add the lttng_list_kernel_events which list available tracing
events of the kernel.

Adds new options to the lttng list command for listing a lot more
details of a tracing session including channels, events and domains.

Also adds the enabled flag to the lttng_event and lttng_channel
structure.

Fix a bad pointer cast in list events.

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
10 years agoUpdate quickstart
Mathieu Desnoyers [Tue, 2 Aug 2011 17:46:52 +0000 (13:46 -0400)] 
Update quickstart

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
10 years agoFix missing session list unlock
David Goulet [Mon, 1 Aug 2011 17:37:49 +0000 (13:37 -0400)] 
Fix missing session list unlock

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
10 years agoUpdate quickstart
Mathieu Desnoyers [Fri, 29 Jul 2011 18:45:36 +0000 (14:45 -0400)] 
Update quickstart

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
10 years agoUpdate version to 2.0-pre6 v2.0-pre6
David Goulet [Fri, 29 Jul 2011 15:30:44 +0000 (11:30 -0400)] 
Update version to 2.0-pre6

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
10 years agoAdd kretprobe support (new --function implementation)
Mathieu Desnoyers [Thu, 28 Jul 2011 22:45:37 +0000 (18:45 -0400)] 
Add kretprobe support (new --function implementation)

Add kretprobe support (new --function implementation)

Also support probe "symbol" (without +offset) by checking first
character with isalpha().

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
10 years agoFix multiple enable events
David Goulet [Fri, 29 Jul 2011 15:15:20 +0000 (11:15 -0400)] 
Fix multiple enable events

The session name was not set after the first event enabled.

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
10 years agoUpdate version to 2.0-pre5 v2.0-pre5
David Goulet [Thu, 28 Jul 2011 19:33:11 +0000 (15:33 -0400)] 
Update version to 2.0-pre5

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
10 years agoPrint trace output patch on lttng create
David Goulet [Thu, 28 Jul 2011 17:15:32 +0000 (13:15 -0400)] 
Print trace output patch on lttng create

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
10 years agoFix adding multiple kernel context at once
David Goulet [Thu, 28 Jul 2011 17:12:34 +0000 (13:12 -0400)] 
Fix adding multiple kernel context at once

The session name was not set when multiple add-context was asked.

Also fix error message and session daemon return error when one add
kernel context fails.

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
10 years agoFix auto session path duplication
David Goulet [Thu, 28 Jul 2011 16:13:35 +0000 (12:13 -0400)] 
Fix auto session path duplication

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
10 years agoFix bad strncmp length
David Goulet [Thu, 28 Jul 2011 16:13:02 +0000 (12:13 -0400)] 
Fix bad strncmp length

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
10 years agoUpdate version to 2.0-pre4 v2.0-pre4
David Goulet [Wed, 27 Jul 2011 20:32:27 +0000 (16:32 -0400)] 
Update version to 2.0-pre4

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
10 years agoFix channel creation when enabling an event
David Goulet [Wed, 27 Jul 2011 20:26:21 +0000 (16:26 -0400)] 
Fix channel creation when enabling an event

If the channel is not found when enabling an event, that channel will be
created.

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
10 years agoAdd event count in channel structure
David Goulet [Wed, 27 Jul 2011 20:15:24 +0000 (16:15 -0400)] 
Add event count in channel structure

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
10 years agoFix uninitialized kprobe attributes
David Goulet [Wed, 27 Jul 2011 20:13:46 +0000 (16:13 -0400)] 
Fix uninitialized kprobe attributes

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
10 years agoFix bad address conversion
David Goulet [Wed, 27 Jul 2011 19:01:29 +0000 (15:01 -0400)] 
Fix bad address conversion

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
This page took 0.061438 seconds and 4 git commands to generate.