lttng-tools.git
12 years agoMake MSG() print on stdout instead of stderr
David Goulet [Tue, 17 Jan 2012 18:37:56 +0000 (13:37 -0500)] 
Make MSG() print on stdout instead of stderr

Signed-off-by: David Goulet <dgoulet@efficios.com>
12 years agoAdd UST test for n events using validation
David Goulet [Mon, 16 Jan 2012 22:25:49 +0000 (17:25 -0500)] 
Add UST test for n events using validation

ust-nevents tests an instrumented application generating 100 events and
validating that those events are found using babeltrace (need to be
installed).

Adds the tests/utils.sh which is a family of function used to interact
with lttng cli. There is also a trace_matches function which uses
babeltrace to find string patterns.

Also, the session daemon is spawned at the beginning of runall.sh and
killed at the end. This means that all tests are done on a single
session daemon instance. Thus, session name across tests have to be
unique! From now on, each test should use the file name as a unique
identifier for the session name.

Finally, fixed the session name for all tests. At this commit, "make
check" or "sudo make check" should pass.

Signed-off-by: David Goulet <dgoulet@efficios.com>
12 years agoAdd UST validation test for data structure
David Goulet [Mon, 16 Jan 2012 18:12:02 +0000 (13:12 -0500)] 
Add UST validation test for data structure

Signed-off-by: David Goulet <dgoulet@efficios.com>
12 years agoFix runas namespace
David Goulet [Mon, 16 Jan 2012 17:15:18 +0000 (12:15 -0500)] 
Fix runas namespace

Signed-off-by: David Goulet <dgoulet@efficios.com>
12 years agoMove runas.h to common/ directory
David Goulet [Mon, 16 Jan 2012 17:00:24 +0000 (12:00 -0500)] 
Move runas.h to common/ directory

Simply put to improve semantic over the code includes and knowing that
runas.h comes from the common library.

It's arguable to do this across the code base for all internal
libraries. This should be discuss at least for the code tree
consistency.

Signed-off-by: David Goulet <dgoulet@efficios.com>
12 years agoAdd UST test binaries to gitignore
David Goulet [Mon, 16 Jan 2012 16:54:20 +0000 (11:54 -0500)] 
Add UST test binaries to gitignore

Signed-off-by: David Goulet <dgoulet@efficios.com>
12 years agoAdd two basic tests for UST global domain
David Goulet [Mon, 16 Jan 2012 16:08:35 +0000 (11:08 -0500)] 
Add two basic tests for UST global domain

They test basic functionnality of UST meaning creating
channel/session/event, enabling/disabling, start/stop and destroy the
session.

Those two tests *does not* use UST instrumented application. They only
test support and communication between lttng cli and session daemon.

Integrated with "make check"

Signed-off-by: David Goulet <dgoulet@efficios.com>
12 years agoRemove CLONE_VM flag
Mathieu Desnoyers [Fri, 13 Jan 2012 21:18:27 +0000 (16:18 -0500)] 
Remove CLONE_VM flag

Makes debugging with GDB impossible. We'll have to revisit the actual
performance impact of not having CLONE_VM in place eventually.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoRemove stringify and add quotes directly in the configure
Yannick Brosseau [Fri, 13 Jan 2012 15:23:49 +0000 (10:23 -0500)] 
Remove stringify and add quotes directly in the configure

Some part of the path where the same as some defined variable and
the resulting string conversion gave the wrong result.

Remove the whole stringify function, since its use can be misleading

Signed-off-by: Yannick Brosseau <yannick.brosseau@gmail.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
12 years agoAdd debug output to sessiond's kernel consumer selection
Alexandre Montplaisir [Thu, 12 Jan 2012 22:50:36 +0000 (17:50 -0500)] 
Add debug output to sessiond's kernel consumer selection

Signed-off-by: Alexandre Montplaisir <alexandre.montplaisir@gmail.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
12 years agoAdd libdir and bindir outputs to configure
Alexandre Montplaisir [Thu, 12 Jan 2012 22:50:35 +0000 (17:50 -0500)] 
Add libdir and bindir outputs to configure

Signed-off-by: Alexandre Montplaisir <alexandre.montplaisir@gmail.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
12 years agoAdd target arch and paths to the configure output
Alexandre Montplaisir [Thu, 12 Jan 2012 22:50:34 +0000 (17:50 -0500)] 
Add target arch and paths to the configure output

The two eval's are needed to correctly expand the variables in the
default path.

Signed-off-by: Alexandre Montplaisir <alexandre.montplaisir@gmail.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
12 years agoFix multiple error handling for UST tracing
David Goulet [Fri, 13 Jan 2012 18:47:24 +0000 (13:47 -0500)] 
Fix multiple error handling for UST tracing

Bad error handling was making event and channel out of sync between
trace ust and ust app data structure.

This makes the session daemon way more stable for the case the sessiond
and/or UST tracer reach the maximum number of open files.

Fix memory leaks upon error when creating a session/channel/event.

Fix out of order add unique channel node to hash table.

Finally, fix some debug/error statements.

Signed-off-by: David Goulet <dgoulet@efficios.com>
12 years agoMerge branch 'master' of git://git.lttng.org/lttng-tools
David Goulet [Fri, 13 Jan 2012 15:10:58 +0000 (10:10 -0500)] 
Merge branch 'master' of git://git.lttng.org/lttng-tools

12 years agoFix incorrect error message for stop trace
Mathieu Desnoyers [Thu, 12 Jan 2012 22:49:31 +0000 (17:49 -0500)] 
Fix incorrect error message for stop trace

Reported-by: Tan Dung Le Tran <tan.dung.le.tran@ericsson.com>
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoFix ht default size test
Mathieu Desnoyers [Thu, 12 Jan 2012 19:39:23 +0000 (14:39 -0500)] 
Fix ht default size test

in the line:

  size != 0 ? : (size = DEFAULT_HT_SIZE);

we should notice that the lack of ( ) around "size != 0" leads to the
following behavior: the compiler will try to evaluate

  "0 ? : (size = DEFAULT_HT_SIZE)"

and compare it to size, which is not the expected behavior.

Use a standard "if (cond)" test instead. The ? : expression is not
needed here anyway, it just complicates the code.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoUST consumer: close shm fd after mapping it
Mathieu Desnoyers [Thu, 12 Jan 2012 19:30:04 +0000 (14:30 -0500)] 
UST consumer: close shm fd after mapping it

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoUpdate lttng-ust-abi.h local copy
Mathieu Desnoyers [Thu, 12 Jan 2012 18:51:08 +0000 (13:51 -0500)] 
Update lttng-ust-abi.h local copy

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoRemove unneeded fields assignments (should not use those UST-internal fields)
Mathieu Desnoyers [Thu, 12 Jan 2012 18:47:09 +0000 (13:47 -0500)] 
Remove unneeded fields assignments (should not use those UST-internal fields)

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoFix out of order channel insert in hash table
David Goulet [Thu, 12 Jan 2012 18:04:51 +0000 (13:04 -0500)] 
Fix out of order channel insert in hash table

The channel, ust-app side, was added to the hash table of the session
even if the creation failed on the tracer side. When enabling event for
that channel, a segfault was hit since the channel did not exist on the
tracer side and channel_data was NULL at this point.

Now the channel insertion in the hash table is done *after* enabling it
on the tracer side.

Reported-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
12 years agoAdd missing rcu register thread calls
David Goulet [Thu, 12 Jan 2012 15:59:38 +0000 (10:59 -0500)] 
Add missing rcu register thread calls

Signed-off-by: David Goulet <dgoulet@efficios.com>
12 years agoFix trace UST destroy channel
David Goulet [Thu, 12 Jan 2012 15:47:13 +0000 (10:47 -0500)] 
Fix trace UST destroy channel

The trace_ust_destroy_channel call was iterating over the internal
events hash table and destroying the complete hash table at each event
which makes no sense at all. This caused a major segfault in the hash
table data structure when destroying a session.

Reported-by: Tan Dung Le Tran<tan.dung.le.tran@ericsson.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
12 years agoMake consumer verbose only with --verbose-consumer option
David Goulet [Wed, 11 Jan 2012 22:09:54 +0000 (17:09 -0500)] 
Make consumer verbose only with --verbose-consumer option

Signed-off-by: David Goulet <dgoulet@efficios.com>
12 years agoAdd missing rcu read lock and add assert
David Goulet [Wed, 11 Jan 2012 20:21:58 +0000 (15:21 -0500)] 
Add missing rcu read lock and add assert

Signed-off-by: David Goulet <dgoulet@efficios.com>
12 years agoRCU support for consumer's hash tables
David Goulet [Wed, 11 Jan 2012 19:51:04 +0000 (14:51 -0500)] 
RCU support for consumer's hash tables

Signed-off-by: David Goulet <dgoulet@efficios.com>
12 years agoAdd lttng hash table support to liblttng-consumer
David Goulet [Wed, 11 Jan 2012 17:03:07 +0000 (12:03 -0500)] 
Add lttng hash table support to liblttng-consumer

Remove linked list usage from liblttng-consumer and replace them by
lockless RCU hash tables.

Note that there is still a mutex lock protecting those hash tables and
no RCU lock mechanism used. For now, it's OK and a very small
performance hit.

Signed-off-by: David Goulet <dgoulet@efficios.com>
12 years agoRemove application from socket hash table upon unregister
Mathieu Desnoyers [Tue, 10 Jan 2012 20:25:34 +0000 (15:25 -0500)] 
Remove application from socket hash table upon unregister

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoFix id vs uid confusion introduced by merge of new hash table code
Mathieu Desnoyers [Tue, 10 Jan 2012 19:37:33 +0000 (14:37 -0500)] 
Fix id vs uid confusion introduced by merge of new hash table code

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoRemove incorrect assert in hash table lookup
Mathieu Desnoyers [Tue, 10 Jan 2012 18:55:26 +0000 (13:55 -0500)] 
Remove incorrect assert in hash table lookup

key can be NULL (0 value is allowed).

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agolttng-sessiond: do not call ustctl_register_done()
Gerlando Falauto [Thu, 5 Jan 2012 11:25:29 +0000 (12:25 +0100)] 
lttng-sessiond: do not call ustctl_register_done()

When lttng-ust support is not enabled, compilation might fail with:
lttng-tools.git/lttng-sessiond/main.c:1167: undefined reference to
`ustctl_register_done'

Actually when HAVE_LIBLTTNG_UST_CTL is not defined, the function call is
normally optimized out by the compiler because ust_app_register() is a
static inline alway returning a negative value, leaving the call within
unreachable code.

Depending on the compiler version and optimization flags, this may
however not always happen, leading to the above error.

Therefore replace ustctl_register_done() with ustapp_register_done(),
which calls the original function when lttng-ust is enabled, and returns
an error otherwise (it is unreachable code anyway).

Signed-off-by: Gerlando Falauto <gerlando.falauto@keymile.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
12 years agoAdd and support the new hash table library
David Goulet [Fri, 16 Dec 2011 22:14:21 +0000 (17:14 -0500)] 
Add and support the new hash table library

liblttng-ht/ is the library introduced for hash table management.

This library uses the URCU ht-shrink branch (not yet upstream) making
the lib completely lockless. Import git head URCU hashtables at commit:
91a75cc579698814e47877cc8927fcae1f573739

Note that urcu hash table files are copied from the urcu git ree to this
git tree waiting for them to be upstream and stable.

Old hash table files are removed from libcommon.

Signed-off-by: David Goulet <dgoulet@efficios.com>
12 years agoAdd missing Makefile.am in common/
Mathieu Desnoyers [Mon, 9 Jan 2012 15:22:06 +0000 (10:22 -0500)] 
Add missing Makefile.am in common/

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoMove runas to common/
Mathieu Desnoyers [Sat, 7 Jan 2012 21:19:51 +0000 (16:19 -0500)] 
Move runas to common/

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoMove hash table to common/ directory
Mathieu Desnoyers [Sat, 7 Jan 2012 21:14:38 +0000 (16:14 -0500)] 
Move hash table to common/ directory

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agorunas: use CLONE_VM flag
Mathieu Desnoyers [Sat, 7 Jan 2012 19:56:55 +0000 (14:56 -0500)] 
runas: use CLONE_VM flag

Having to clone the vma each time runas is executed brings a significant
slowdown to the "start" operation when done with attached application,
and to the file creation needed when an application is attaching to the
sessiond. Use CLONE_VM flag to speed this up.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agorunas: use waitpid instead of wait
Mathieu Desnoyers [Fri, 6 Jan 2012 21:52:28 +0000 (16:52 -0500)] 
runas: use waitpid instead of wait

Deal with multithreading by waiting specifically for the pid we cloned.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoUpdate version to 2.0-pre16
David Goulet [Fri, 23 Dec 2011 16:19:08 +0000 (11:19 -0500)] 
Update version to 2.0-pre16

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
12 years agotest_sessions: add fflush after printf not ending with newline
Mathieu Desnoyers [Thu, 22 Dec 2011 02:35:19 +0000 (21:35 -0500)] 
test_sessions: add fflush after printf not ending with newline

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoclone: return instead of exit()
Mathieu Desnoyers [Thu, 22 Dec 2011 02:32:45 +0000 (21:32 -0500)] 
clone: return instead of exit()

Calling exit() from the cloned process is a bad idea, because we share
file descriptors with the parent, and exit() has side-effects (anyway,
more than the low-level _exit()).

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoFix stack of librunas child by using mmap and a larger stack
Mathieu Desnoyers [Wed, 21 Dec 2011 23:44:36 +0000 (18:44 -0500)] 
Fix stack of librunas child by using mmap and a larger stack

Did cause SIGSEGV for tests/test_sessions.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoOnly seteuid/setegid if they differ from current values
Mathieu Desnoyers [Wed, 21 Dec 2011 15:42:51 +0000 (10:42 -0500)] 
Only seteuid/setegid if they differ from current values

According to seteuid(2):

       According to POSIX.1, seteuid() (setegid()) need not permit euid (egid)
       to be the same value as the current effective user (group) ID, and some
       implementations do not permit this.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoOnly allow the user or group owning the session (or root) to control a session
Mathieu Desnoyers [Wed, 21 Dec 2011 15:21:29 +0000 (10:21 -0500)] 
Only allow the user or group owning the session (or root) to control a session

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agolibrunas: clone another process also if not root
Mathieu Desnoyers [Wed, 21 Dec 2011 14:44:24 +0000 (09:44 -0500)] 
librunas: clone another process also if not root

Still useful to isolate umask(0).

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoCreate output directory at session creation command
Mathieu Desnoyers [Wed, 21 Dec 2011 02:46:48 +0000 (21:46 -0500)] 
Create output directory at session creation command

Otherwise it is weird to see that we are using a directory that we don't
have write access to. Better to fail immediately on the create command.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoImplement open_run_as, using clone() CLONE_FILES
Mathieu Desnoyers [Wed, 21 Dec 2011 02:33:13 +0000 (21:33 -0500)] 
Implement open_run_as, using clone() CLONE_FILES

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agolibrarize run_as
Mathieu Desnoyers [Tue, 20 Dec 2011 23:01:10 +0000 (18:01 -0500)] 
librarize run_as

still TODO: finish open_run_as -- need to pass the file descriptor back
to the parent. Currently using a racy open+fchown work-around.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoImplement run_as wrappers for mkdir/mkdir_recursive/open
Mathieu Desnoyers [Tue, 20 Dec 2011 21:42:58 +0000 (16:42 -0500)] 
Implement run_as wrappers for mkdir/mkdir_recursive/open

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoIntroduce run_as for mkdir_recursive
Mathieu Desnoyers [Tue, 20 Dec 2011 21:09:32 +0000 (16:09 -0500)] 
Introduce run_as for mkdir_recursive

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoCreate all trace directories and files with client user credentials
Mathieu Desnoyers [Tue, 20 Dec 2011 20:19:01 +0000 (15:19 -0500)] 
Create all trace directories and files with client user credentials

Keep the client user credentials that created a session along with the
session. Use exactly those credentials to chown the created directories
and files.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoRename sessiond internal "uid" fields to "id"
Mathieu Desnoyers [Tue, 20 Dec 2011 18:12:30 +0000 (13:12 -0500)] 
Rename sessiond internal "uid" fields to "id"

Ensure we don't confuse "user ID" (UID) and session unique ID
(session_id or id).

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoChange easter egg MSG to DBG
David Goulet [Fri, 16 Dec 2011 17:26:03 +0000 (12:26 -0500)] 
Change easter egg MSG to DBG

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
12 years agoAdd debug statement
David Goulet [Fri, 16 Dec 2011 17:23:52 +0000 (12:23 -0500)] 
Add debug statement

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
12 years agoSupport creds passing between lttng and sessiond
David Goulet [Fri, 16 Dec 2011 17:15:28 +0000 (12:15 -0500)] 
Support creds passing between lttng and sessiond

From now on, the lttng command line sends it's credential at each
command along with the regular communication data.

The tracing output directory is set to those credentials (uid/gid) if
the session daemon is running as a regular user (even if the user is in
the tracing group). So *no* tracing group is ever set if the session
daemon is not running as a non-root user.

If the sessiond is running as root, the tracing group is set (if exist)
and the uid of the calling user is used.

This fixes the triple enable-channel/event needed to trace UST
applications with a non-root session daemon. This was reported by
Yannick Brosseau <yannick.brosseau@polymtl.ca>.

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
12 years agoAdd support for passing credentials over Unix sock
David Goulet [Fri, 16 Dec 2011 17:12:35 +0000 (12:12 -0500)] 
Add support for passing credentials over Unix sock

Add lttcomm_* functions for sending, receiving and setting socket option
to pass credentials over a Unix socket. Those functions allowed normal
data to be pass as well.

First commit of a series to enable credentials passing between the lttng
command line client and the session daemon.

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
12 years agoFix nested double usage of hashtable iterators
David Goulet [Thu, 15 Dec 2011 16:42:44 +0000 (11:42 -0500)] 
Fix nested double usage of hashtable iterators

Also cleanup iterator declaration by moving the nested iterator inside
the loop scope.

Reported-by: Yannick Brosseau <yannick.brosseau@polymtl.ca>
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
12 years agoAdd disable kernel tracing option to sessiond
David Goulet [Wed, 14 Dec 2011 21:24:42 +0000 (16:24 -0500)] 
Add disable kernel tracing option to sessiond

Use --no-kernel to completely disable kernel tracing.

Reported-by: Tan Dung Le Tran <tan.dung.le.tran@ericsson.com>
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
12 years agoUpdate version to 2.0-pre15
David Goulet [Tue, 13 Dec 2011 21:25:39 +0000 (16:25 -0500)] 
Update version to 2.0-pre15

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
12 years agoChange liburcu dependency to 0.6.7
David Goulet [Tue, 13 Dec 2011 21:23:41 +0000 (16:23 -0500)] 
Change liburcu dependency to 0.6.7

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
12 years agoFix missing files needed for release
David Goulet [Tue, 13 Dec 2011 21:06:58 +0000 (16:06 -0500)] 
Fix missing files needed for release

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
12 years agoFix register consumer fd test on registration
David Goulet [Tue, 13 Dec 2011 20:50:16 +0000 (15:50 -0500)] 
Fix register consumer fd test on registration

When a kernel session is created, a consumer is immediately spawned. So,
using two sessions, the second one was not able to register it's own
consumer since the consumer_fd is set because there is a running kernel
consumer from the first created session. The flag consumer_fds_sent is
now used to test if the kernel consumer is already consuming buffers.

Reported-by: Julien Desfossez <julien.desfossez@polymtl.ca>
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
12 years agoFix code syntax
David Goulet [Mon, 12 Dec 2011 20:58:34 +0000 (15:58 -0500)] 
Fix code syntax

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
12 years agoUpdate quickstart with UST tracing howto
David Goulet [Mon, 12 Dec 2011 19:42:41 +0000 (14:42 -0500)] 
Update quickstart with UST tracing howto

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
12 years agoDeprecate lttng-cli.txt file
David Goulet [Mon, 12 Dec 2011 19:42:27 +0000 (14:42 -0500)] 
Deprecate lttng-cli.txt file

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
12 years agoFix missing consumer binary name in execl
David Goulet [Mon, 12 Dec 2011 17:58:11 +0000 (12:58 -0500)] 
Fix missing consumer binary name in execl

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
12 years agoFix flush buffer after wait quiescent
David Goulet [Mon, 12 Dec 2011 17:56:29 +0000 (12:56 -0500)] 
Fix flush buffer after wait quiescent

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
12 years agoFlush UST buffers after stop and wait quiescent
David Goulet [Mon, 12 Dec 2011 15:43:57 +0000 (10:43 -0500)] 
Flush UST buffers after stop and wait quiescent

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
12 years agoAdd missing release handle declaration
David Goulet [Mon, 12 Dec 2011 15:43:28 +0000 (10:43 -0500)] 
Add missing release handle declaration

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
12 years agoUST support: release session handle on destroy
Mathieu Desnoyers [Sun, 11 Dec 2011 16:12:57 +0000 (11:12 -0500)] 
UST support: release session handle on destroy

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoFix unused variables
David Goulet [Fri, 9 Dec 2011 14:24:58 +0000 (09:24 -0500)] 
Fix unused variables

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
12 years agoFlush buffers on UST stop trace
David Goulet [Thu, 8 Dec 2011 22:03:23 +0000 (17:03 -0500)] 
Flush buffers on UST stop trace

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
12 years agoAdd non-root support for UST tracing
David Goulet [Thu, 8 Dec 2011 20:49:02 +0000 (15:49 -0500)] 
Add non-root support for UST tracing

User-space tracing can now be used without root access meaning that the
session daemon can run with the user credentials and trace his own
applications.

This adds the LTTNG_HOME_RUNDIR which is located, under non privileged
user, in $HOME/.lttng. It contains all the control and consumers
sockets. It is cleanup when lttng-sessiond dies.

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
12 years agoAdd error message when config file not found
David Goulet [Thu, 8 Dec 2011 19:19:22 +0000 (14:19 -0500)] 
Add error message when config file not found

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
12 years agoFix kernel listing enable status
David Goulet [Thu, 8 Dec 2011 19:09:45 +0000 (14:09 -0500)] 
Fix kernel listing enable status

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
12 years agoMinor fix return value
David Goulet [Thu, 8 Dec 2011 17:23:06 +0000 (12:23 -0500)] 
Minor fix return value

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
12 years agoImprove UST channel code
David Goulet [Thu, 8 Dec 2011 16:40:08 +0000 (11:40 -0500)] 
Improve UST channel code

Better breakdown of the code when creating/enabling/disabling UST
channel.

No new features added. It's mostly a refactoring.

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
12 years agoImprove UST context code
David Goulet [Thu, 8 Dec 2011 15:40:38 +0000 (10:40 -0500)] 
Improve UST context code

Better breakdown of code when adding context to an event or channel.
This also fix possible memory leak of ust context data structure.

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
12 years agoMultiple fixes for enable/disable UST support
David Goulet [Wed, 7 Dec 2011 23:24:49 +0000 (18:24 -0500)] 
Multiple fixes for enable/disable UST support

Makes the enable/disable command inside the main.c uses the event.c
functions. For this, the disable tracepoint functions (single and all)
for UST are added to event.c

Also fix the goto error path in event.c for disable/enable functions
where the UST event was removed from the hashtable if the event already
exist on the tracer side.

Fix the wrong hashtable being used for events lookup in ust_app.c for
enable/disable event for UST global domain.

Adds the disable event per PID function call in ust_app.c

At this commit, the "lttng disable-event -a -u" command segfault
lttng-ust at commit 5cd29ace704432c7a421f7749ef8591e30e1894c.

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
12 years agoFix wrong lttng_channel name size
David Goulet [Wed, 7 Dec 2011 21:19:54 +0000 (16:19 -0500)] 
Fix wrong lttng_channel name size

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
12 years agoFix wrong sizeof on channel name copy
David Goulet [Wed, 7 Dec 2011 21:18:44 +0000 (16:18 -0500)] 
Fix wrong sizeof on channel name copy

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
12 years agoFix enable event -u -a
Mathieu Desnoyers [Wed, 7 Dec 2011 02:50:26 +0000 (21:50 -0500)] 
Fix enable event -u -a

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoUpdate consumerd search paths comment
Mathieu Desnoyers [Tue, 6 Dec 2011 21:21:18 +0000 (16:21 -0500)] 
Update consumerd search paths comment

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoDocument wildcards for userspace tracer
Mathieu Desnoyers [Tue, 6 Dec 2011 21:20:20 +0000 (16:20 -0500)] 
Document wildcards for userspace tracer

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoPrefer using the native consumer over 32-bit consumer for kernel
Mathieu Desnoyers [Tue, 6 Dec 2011 21:07:51 +0000 (16:07 -0500)] 
Prefer using the native consumer over 32-bit consumer for kernel

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoChange lttng command line options for UST domain
David Goulet [Tue, 6 Dec 2011 20:27:15 +0000 (15:27 -0500)] 
Change lttng command line options for UST domain

lttng command line option --all is removed and replace by using -u alone
which indicates that the command must be applied to the UST global
domain.

$ lttng enable-event -u --all
is changed to
$ lttng enable-event -u

Also, the long option for -a, --all-events, is replaced by --all.

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
12 years agoAPI change for lttng_list_domains prototype
David Goulet [Tue, 6 Dec 2011 19:54:13 +0000 (14:54 -0500)] 
API change for lttng_list_domains prototype

Now takes a session name and no lttng_handle anymore.

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
12 years agoAPI change for lttng_start/stop_tracing prototype
David Goulet [Tue, 6 Dec 2011 19:50:18 +0000 (14:50 -0500)] 
API change for lttng_start/stop_tracing prototype

Now takes a session name and no lttng_handle anymore.

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
12 years agoAPI change for lttng_destroy_session prototype
David Goulet [Tue, 6 Dec 2011 19:43:41 +0000 (14:43 -0500)] 
API change for lttng_destroy_session prototype

Now takes a session name and no lttng_handle anymore.

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
12 years agoMerge branch 'master'
David Goulet [Tue, 6 Dec 2011 19:33:02 +0000 (14:33 -0500)] 
Merge branch 'master'

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
12 years agoAdd support for UST enable all tracepoints
David Goulet [Tue, 6 Dec 2011 19:02:54 +0000 (14:02 -0500)] 
Add support for UST enable all tracepoints

Support to enable all tracepoints for UST global domain

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
12 years agoupdate loglevel printout
Mathieu Desnoyers [Tue, 6 Dec 2011 16:50:28 +0000 (11:50 -0500)] 
update loglevel printout

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoCleanup lttng enable event command
David Goulet [Tue, 6 Dec 2011 15:58:27 +0000 (10:58 -0500)] 
Cleanup lttng enable event command

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
12 years agolisting and activation of loglevel by number
Mathieu Desnoyers [Tue, 6 Dec 2011 15:29:06 +0000 (10:29 -0500)] 
listing and activation of loglevel by number

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agologlevels: allow enable/disable
Mathieu Desnoyers [Tue, 6 Dec 2011 14:08:33 +0000 (09:08 -0500)] 
loglevels: allow enable/disable

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoAdd loglevel to event list
Mathieu Desnoyers [Tue, 6 Dec 2011 01:20:10 +0000 (20:20 -0500)] 
Add loglevel to event list

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoABIs now support 256 char event names
Mathieu Desnoyers [Tue, 6 Dec 2011 01:08:35 +0000 (20:08 -0500)] 
ABIs now support 256 char event names

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoUpdate symbol name len size limit to 256
Mathieu Desnoyers [Tue, 6 Dec 2011 01:02:01 +0000 (20:02 -0500)] 
Update symbol name len size limit to 256

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoUse the consumerd_bin variables for kernel consumers too
Alexandre Montplaisir [Mon, 5 Dec 2011 22:30:41 +0000 (17:30 -0500)] 
Use the consumerd_bin variables for kernel consumers too

Right now the sessiond will only look in its own directory for
the consumerd when starting a kernel trace. This patch makes it
check for consumerd32_bin and consumerd64_bin too.

Signed-off-by: Alexandre Montplaisir <alexandre.montplaisir@gmail.com>
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoRename consumerd32/64_path options to _bin
Alexandre Montplaisir [Mon, 5 Dec 2011 22:30:06 +0000 (17:30 -0500)] 
Rename consumerd32/64_path options to _bin

The _path suffix was confusing as to whether it would include the
filename at the end or not. In fact it should (to allow greater
flexibility in moving/renaming the consumerd executable).

Rename all configure options, env vars and substition variables to
consumerd32/64_bin instead, and expect the user to pass a complete
basename + filename to those.

Signed-off-by: Alexandre Montplaisir <alexandre.montplaisir@gmail.com>
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoFix ust app tracepoint list realloc
Mathieu Desnoyers [Mon, 5 Dec 2011 18:24:36 +0000 (13:24 -0500)] 
Fix ust app tracepoint list realloc

- memcpy data _after_ reallocation (corruption fix),
- fix off-by-one in size check (corruption fix),
- multiply size by 2 each time size increase is needed (optimisation).

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoFix bad return value on enable syscalls making it freeze
David Goulet [Mon, 5 Dec 2011 17:06:35 +0000 (12:06 -0500)] 
Fix bad return value on enable syscalls making it freeze

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