Stefan Seefeld [Sat, 11 May 2013 12:50:36 +0000 (08:50 -0400)]
Add --with-lttng-ust-prefix config option.
Signed-off-by: Stefan Seefeld <stefan@codesourcery.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Fri, 10 May 2013 17:27:30 +0000 (13:27 -0400)]
Fix: check channel subbuf size against page size
Don't validate channel subbuffer size against the default values but
rather against the lower bound being the page size taken at runtime.
Reported-by: Tan Dung Le Tran <tan.dung.le.tran@ericsson.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Thu, 9 May 2013 15:54:20 +0000 (11:54 -0400)]
Fix: print an error if tracefile-size is missing with count
The command will also stop and inform the user that an option is
missing.
Reported-by: Christian Babeux <christian.babeux@efficios.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Thu, 9 May 2013 14:05:44 +0000 (10:05 -0400)]
Update version to v2.2.0-rc2
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Tue, 7 May 2013 15:54:41 +0000 (11:54 -0400)]
Fix: split UST per UID/PID default values
The default per UID subbuffer size are changed from 4096 bytes to 131072
bytes (128k). The rest have the same values as before.
Some DEFAULT_CHANNEL_* macros are prefixed with an underscore making
sure they are not used elsewhere in the code base and only domain
specific values are used.
Fixes #524
Acked-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Mon, 6 May 2013 18:41:17 +0000 (14:41 -0400)]
Fix: don't start the relayd with a wrong --output dir
The -o, --output option never supported a relative path but still the
relayd was able to start.
This makes sure the relayd does not start without an absolute pathname.
The help and man are also updated to document this behavior.
Ticket #523 has been opened as a feature request to support relative
path.
Fixes #481
Acked-by: Julien Desfossez <julien.desfossez@efficios.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Mon, 6 May 2013 16:34:57 +0000 (12:34 -0400)]
Fix: Erroneous automatic session name when streaming
Fixes #460
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Mon, 6 May 2013 16:06:52 +0000 (12:06 -0400)]
Fix: wrong data port when listing session's URI
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Mon, 6 May 2013 15:53:02 +0000 (11:53 -0400)]
Fix: don't create a channel on an enable channel
Fixes #465
Signed-off-by: David Goulet <dgoulet@efficios.com>
Christian Babeux [Mon, 6 May 2013 15:32:07 +0000 (11:32 -0400)]
Tests: Add missing test_utils_parse_size_suffix to unit tests
Signed-off-by: Christian Babeux <christian.babeux@efficios.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Mon, 6 May 2013 15:31:49 +0000 (11:31 -0400)]
Fix: print lttng strerror on enable event with filter
Fixes #516
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Mon, 6 May 2013 15:21:27 +0000 (11:21 -0400)]
Fix: change relayd protocol version to 2.2
Without the 2.2 protocol, the tracefile size/count can't be used for
network streaming. This should have been done at the rc1 release.
Acked-by: Julien Desfossez <julien.desfossez@efficios.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Mon, 6 May 2013 15:04:21 +0000 (11:04 -0400)]
Fix: reset current size for tracefile rotation
Fixes #514
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Fri, 3 May 2013 15:16:32 +0000 (11:16 -0400)]
Fix: remove extra -I for python bindings
Fixes #517
Signed-off-by: David Goulet <dgoulet@efficios.com>
Mathieu Desnoyers [Thu, 2 May 2013 17:48:48 +0000 (13:48 -0400)]
lttng UI: round up trace file size to subbuf size if needed
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Thu, 2 May 2013 15:58:37 +0000 (11:58 -0400)]
Fix lttng UI: fix arg parsing, round size to next power of two
Also:
- don't accept negative values,
- don't accept 0 values where it's not allowed,
- fix tracefile size option: it was parsing the previous argument.
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Thu, 2 May 2013 15:53:08 +0000 (11:53 -0400)]
Fix: check errors in lttng command argument values
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Thu, 2 May 2013 15:33:46 +0000 (11:33 -0400)]
Implement get_count_order in lttng utils
Imported from Userspace RCU rculfhash.c.
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Simon Marchi [Fri, 12 Apr 2013 21:15:12 +0000 (17:15 -0400)]
lttng cli: Accept human readable sizes for --subbuf-size
--subbuf-size accepts sizes such as:
- 123 -> 123
- 123k -> 123 * 1024
- 123M -> 123 * 1024^2
- 123G -> 123 * 1024^3
It uses the new parse_size_suffix function, which could probably be used
at other places, such as tracefile size.
Unit tests are included.
Reviewed-by: Christian Babeux <christian.babeux@efficios.com>
Signed-off-by: Simon Marchi <simon.marchi@polymtl.ca>
Signed-off-by: David Goulet <dgoulet@efficios.com>
Simon Marchi [Mon, 8 Apr 2013 15:20:04 +0000 (11:20 -0400)]
Unit tests: don't rebuild units under test
Only the tests themselves are built in the unit test folder. They reuse
the object files that are already built during the main compilation
pass. This would fix the conflicts between object names.
Signed-off-by: Simon Marchi <simon.marchi@polymtl.ca>
Signed-off-by: David Goulet <dgoulet@efficios.com>
Mathieu Desnoyers [Wed, 1 May 2013 20:52:59 +0000 (16:52 -0400)]
Fix: consumerd metadata channel/cache/timer races
There were various races with the way metadata was handled for UST. Fix
this by:
- Ensuring that metadata cache is destroyed only when the metadata
channel is destroyed (it is already protected by refcounting).
- Ensuring that close_metadata() command (issued by sessiond) just
closes the stream wakeup_fd, and let the metadata management thread
(which has ownership of the metadata stream) perform the teardown.
- Ensure that switch timer, for metadata, is always stopped before any
of the metadata stream or channel teardown is done.
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
Mathieu Desnoyers [Wed, 1 May 2013 20:50:55 +0000 (16:50 -0400)]
Fix: consumerd channel destroy race
The LTTNG_CONSUMER_DESTROY_CHANNEL command is used to handle errors. It
should not call destroy_channel(), because at that point the channel
management thread has ownership of the channel. Send a notification to
the channel management thread asking it to destroy the channel instead.
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Wed, 1 May 2013 20:46:41 +0000 (16:46 -0400)]
Cleanup: document RCU read-side lock better
Eventually we will have to move rcu read-side lock within the callees,
but let's at least make the current code consistent.
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Wed, 1 May 2013 20:43:37 +0000 (16:43 -0400)]
consumer relayd interaction: fix segfaults
State where control socket is unset but data socket is set for a relayd
socket pair can be reached if relayd suddently disconnects at the wrong
time. Ensure we always verify that the file descriptors and operations
are initialized before using them.
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
David Goulet [Tue, 30 Apr 2013 19:32:31 +0000 (15:32 -0400)]
Fix: change order of fd get to fix error path
Last commit had a wrong error path that could lead to an unbalanced fd
put/get.
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Tue, 30 Apr 2013 19:23:56 +0000 (15:23 -0400)]
Fix: fd leak when creating UST metadata channel
Signed-off-by: David Goulet <dgoulet@efficios.com>
Mathieu Desnoyers [Tue, 30 Apr 2013 14:26:11 +0000 (10:26 -0400)]
Fix: fd leak on error
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Tue, 30 Apr 2013 14:25:21 +0000 (10:25 -0400)]
Fix consumerd fd leak
Refcount is only incremented and owned by thread management for streams,
not metadata.
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Tue, 30 Apr 2013 03:03:44 +0000 (23:03 -0400)]
Fix RCU-related hangs: incorrect lttng_ht_destroy use
lttng_ht_destroy() should *NOT* be called with rcu_read_lock() held. It
can cause hangs.
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Tue, 30 Apr 2013 01:38:32 +0000 (21:38 -0400)]
rculfhash: check for callers from RCU read-side C.S.
This is an error.
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Tue, 30 Apr 2013 01:25:39 +0000 (21:25 -0400)]
Fix: don't call hash table destroy under rcu read-side c.s.
Fix
src/bin/lttng-sessiond/ust-registry.c:ust_registry_channel_del_free().
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Tue, 30 Apr 2013 00:58:49 +0000 (20:58 -0400)]
Documentation: import updated comments from urcu
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Mon, 29 Apr 2013 21:13:56 +0000 (17:13 -0400)]
Fix: segfault in buffer_reg_channel_destroy()
Can be called with NULL pointer, which trigger segfault on ERR() which
try to dereference it.
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
David Goulet [Mon, 29 Apr 2013 21:58:51 +0000 (17:58 -0400)]
Fix: add missing goto error in UST consumer
On error, a channel set to NULL can be used causing a segfault when
receiving the metadata.
Reported-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Mon, 29 Apr 2013 17:08:36 +0000 (13:08 -0400)]
Fix: no need to use run_as_open in the relayd
The utils create stream file function is changed to handle uid and gid
set to -1 meaning that it now does not use the run_as_open() call which
is costly in performance and will instead use open().
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Mon, 29 Apr 2013 16:58:19 +0000 (12:58 -0400)]
Fix: typo in enable-channel man and help
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Mon, 29 Apr 2013 16:54:48 +0000 (12:54 -0400)]
Fix: add some missing hidden attribute
Signed-off-by: David Goulet <dgoulet@efficios.com>
Mathieu Desnoyers [Mon, 29 Apr 2013 16:50:06 +0000 (12:50 -0400)]
Fix: per-uid buffers should only be flushed once on stop
They were flushed once per application previously, causing workload with many
applications to trigger too many flush on stop, which in turn caused buffer
padding bloat.
* The pseudo-code for stop behavior on per-uid buffers was:
flush session's buffers
for each application:
- stop tracing
- wait quiescent
- flush buffers
- push metadata
Now doing, for per-uid buffers:
for each application:
- stop tracing
- wait quiescent
- push metadata
flush session's buffers
* And for per-pid buffers:
Previously:
for each application:
- stop tracing
- wait quiescent
- flush buffers
- push metadata
Now:
for each application:
- stop tracing
- wait quiescent
- push metadata
for each application:
- flush buffers
Fixes #497
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
Mathieu Desnoyers [Fri, 26 Apr 2013 15:02:54 +0000 (11:02 -0400)]
Cleanup: Use own mutex within timer setup/teardown
More robust than relying on single-caller-thread assumptions.
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
Mathieu Desnoyers [Fri, 26 Apr 2013 14:27:51 +0000 (10:27 -0400)]
Fix: channel management thread should hold a refcount
In order to handle teardown caused by relayd being unresponsive, we need
to ensure that we correctly handle that the streams can be cleaned up
before the channel wakeup pipe gets closed. We achieve this by making
the channel management thread hold a refcount on the channel object, so
it only gets destroyed when all streams, _and_ the channel management
thread, have released their reference.
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
Mathieu Desnoyers [Fri, 26 Apr 2013 14:24:14 +0000 (10:24 -0400)]
Fix: move metadata cache setup before ownership passing
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
Mathieu Desnoyers [Thu, 25 Apr 2013 18:45:17 +0000 (14:45 -0400)]
Fix: consumer metadata switch timer error handling
The thread handling the metadata switch cannot call
consumer_timer_switch_stop(), because it would become stucked waiting
for itself to execute the teardown signal handler.
Moreover, only one thread is allowed to call start/stop timer (by
design). Therefore, it's a race to have the thread handling the timer
handler calling "stop".
Fix this by adding a "switch_timer_error" flag, which just inhibits the
timer if an error is encountered, but does not modify its state
otherwise.
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Mon, 22 Apr 2013 19:04:37 +0000 (15:04 -0400)]
Fix: set ptr to NULL to suppress old gcc warnings
This has been seen with gcc 4.4.5 on a 32 bit machine.
consumer.c: In function ‘consumer_add_relayd_socket’:
consumer.c:3002: warning: ‘relayd’ may be used uninitialized in this
function
However, the relayd pointer can not be used uninitialized so this patch
suppresses the warning.
Reported-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Mon, 22 Apr 2013 18:54:25 +0000 (14:54 -0400)]
Fix: linking order of libraries
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Mon, 22 Apr 2013 17:32:47 +0000 (13:32 -0400)]
Fix: multiple type mismatch in debug statement
This removes all the type mismatch warnings for x86 architecture.
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Fri, 19 Apr 2013 16:15:51 +0000 (12:15 -0400)]
Fix: remove mention of trace directory layout in quickstart doc
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Fri, 12 Apr 2013 15:13:42 +0000 (11:13 -0400)]
Fix: remove unused path variables from session obj
Furthermore, this patch also removes useless '/' in the stream path
which was creating duplicates in the trace file path.
Fixes #496
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Fri, 12 Apr 2013 14:27:59 +0000 (10:27 -0400)]
Fix: update lttng.1 man and enable-channel help with read timer size
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Fri, 12 Apr 2013 14:21:51 +0000 (10:21 -0400)]
Fix: use channel per domain default values
This is related to bug497 but does not fix it. Using the command line and the
lttng_channel_set_default_attr() API call, the default read and switch timer
were not correct for UST and Kernel domain since we now use specific default
values for each of them.
Reported-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Thu, 11 Apr 2013 20:40:46 +0000 (16:40 -0400)]
Fix: typos in the code base
Fixes #488
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Thu, 11 Apr 2013 20:25:50 +0000 (16:25 -0400)]
Fix: deny multiple event types with enable-event
Fixes #444
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Thu, 11 Apr 2013 20:01:20 +0000 (16:01 -0400)]
Fix: deny the same port for data and control URL
This also adds the LTTNG_ERR_NOMEM code and fix a double lttng strerror
print in the lttng create command code.
Fixes #451
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Thu, 11 Apr 2013 19:24:01 +0000 (15:24 -0400)]
Fix: reset consumer destination when changing URIs
Using -C and -D with lttng create, the session if first created with the
default file path and then changed to the relayd URIs.
The destination object was not reset which was causing a corruption to
the state of the consumer object.
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Thu, 11 Apr 2013 19:00:45 +0000 (15:00 -0400)]
Fix: don't allow different control and data destination
The lttng create command does not allow anymore different destination
when using -C and -D.
Fixes #455
Signed-off-by: David Goulet <dgoulet@efficios.com>
Simarpreet Singh [Tue, 9 Apr 2013 19:41:35 +0000 (15:41 -0400)]
Fix: typos in error strings
Fixes #453
Signed-off-by: Simarpreet Singh <simarpreet007@gmail.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Thu, 11 Apr 2013 18:30:46 +0000 (14:30 -0400)]
Improve channel listing output format
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Thu, 11 Apr 2013 18:19:55 +0000 (14:19 -0400)]
Fix: enable-channel accepts mismatched option
Also fixes a small typo in an error message of enable-channel. This
commit adds the buffer type for the UST domain with lttng list.
Fixes #489
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Thu, 11 Apr 2013 18:04:17 +0000 (14:04 -0400)]
Fix: validate buffer type for UST channel creation
Fixes #499
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Thu, 28 Mar 2013 20:32:03 +0000 (16:32 -0400)]
Update version to v2.2.0-rc1
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Thu, 28 Mar 2013 20:21:00 +0000 (16:21 -0400)]
Fix: Add missing header for make dist
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Thu, 28 Mar 2013 20:06:02 +0000 (16:06 -0400)]
Fix: add missing declaration for disable-lttng-ust
Signed-off-by: David Goulet <dgoulet@efficios.com>
Mathieu Desnoyers [Thu, 28 Mar 2013 19:54:12 +0000 (15:54 -0400)]
Fix: don't keep vpid, procname, nor patchlevel environment for per-uid buffers
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
Julien Desfossez [Thu, 28 Mar 2013 17:25:08 +0000 (13:25 -0400)]
Relayd add_stream command handle tracefile rotation
Extend the relayd_add_stream structure to pass the tracefile_size and
tracefile_count parameters required to handle the tracefile rotation.
Signed-off-by: Julien Desfossez <jdesfossez@efficios.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
Julien Desfossez [Thu, 28 Mar 2013 15:48:02 +0000 (11:48 -0400)]
Move stream file rotation functions to utils
These functions are now in libcommon which can be used by the relayd and
consumer.
Signed-off-by: Julien Desfossez <jdesfossez@efficios.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
Julien Desfossez [Thu, 28 Mar 2013 04:09:48 +0000 (00:09 -0400)]
Introduce the relayd socket object
Used to store the version that the relayd socket supports so we can
adapt the communication to the lowest version between the session daemon
and relayd.
Signed-off-by: Julien Desfossez <jdesfossez@efficios.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
Julien Desfossez [Wed, 27 Mar 2013 17:59:08 +0000 (13:59 -0400)]
Adjust the relayd protocol on version check
If the relayd and sessiond are compatible (same major number), we store
in the session the protocol version to use for the rest of the
communication (the lowest minor number).
Signed-off-by: Julien Desfossez <jdesfossez@efficios.com>
Julien Desfossez [Wed, 27 Mar 2013 17:27:55 +0000 (13:27 -0400)]
On-disk multiple tracefiles circular buffer
This patch introduces the tracefile_size and tracefile_count parameters
to the enable-channel command and the API.
This allows to split a stream into multiple tracefiles and limit the
amount of trace data to keep on disk. The tracefiles are readable
independently or with the others as long as the metadata file is
present.
For now only local traces are handled, relayd modifications coming soon.
Signed-off-by: Julien Desfossez <jdesfossez@efficios.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
Mathieu Desnoyers [Wed, 27 Mar 2013 19:28:01 +0000 (15:28 -0400)]
tests: implement context filtering tests
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Wed, 27 Mar 2013 16:10:44 +0000 (12:10 -0400)]
Documentation: filter $ctx manpage and --help
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Tue, 26 Mar 2013 02:33:57 +0000 (22:33 -0400)]
Implement per-context filtering
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
David Goulet [Wed, 27 Mar 2013 16:25:35 +0000 (12:25 -0400)]
Tests: Add periodical flush fast regression test
Signed-off-by: David Goulet <dgoulet@efficios.com>
Julien Desfossez [Tue, 26 Mar 2013 02:27:05 +0000 (22:27 -0400)]
UST periodical metadata flush
Add a socket between the sessiond and the ust-consumer to allow
periodical flush of the metadata channel.
If enabled (by specifying the --switch-timer option on the metadata
channel), a new timer thread in the consumer asks the session daemon for
new metadata for a specific session.
All the metadata collected is written into a metadata cache in the
consumer, this mechanism is useful for synchronisation (to avoid race
conditions between two metadata updates) and will also be useful when we
implement the snapshots.
Acked-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Signed-off-by: Julien Desfossez <jdesfossez@efficios.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Wed, 27 Mar 2013 14:21:54 +0000 (10:21 -0400)]
Tests: Fix nprocesses applications shutdown
The nprocesses test is using the SIGPIPE signal to shutdown the spawned
child applications. This is done in order to silence the shell message
such as this one:
"nprocesses/test_nprocesses: line 79: 26458 Terminated"
This mechanism is broken on systems where the SIGPIPE default handler is
overriden (thus no application shutdown occurs) in the executing
environment. This could lead to stale applications polluting the system
and causing heratic behavior in subsequent tests.
This commit add a loop and check that all the spawned applications have
been successfully killed.
Signed-off-by: Christian Babeux <christian.babeux@efficios.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
Jérémie Galarneau [Wed, 27 Mar 2013 05:38:35 +0000 (01:38 -0400)]
Fix: Add test scripts and lists to the distribution package
Signed-off-by: Jérémie Galarneau <jeremie.galarneau@efficios.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
Jérémie Galarneau [Wed, 27 Mar 2013 03:23:03 +0000 (23:23 -0400)]
Fix: Run tests requiring the python bindings only when they are enabled
Signed-off-by: Jérémie Galarneau <jeremie.galarneau@efficios.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
Jérémie Galarneau [Tue, 26 Mar 2013 00:28:36 +0000 (20:28 -0400)]
Add optional Python >= 3.0 dependency to README
Signed-off-by: Jérémie Galarneau <jeremie.galarneau@efficios.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
Jérémie Galarneau [Tue, 26 Mar 2013 00:28:35 +0000 (20:28 -0400)]
Tests: Add "libc-wrapper" ust regression test
Based on the "test-libustinstr-malloc" test formerly part of lttng-ust.
Signed-off-by: Jérémie Galarneau <jeremie.galarneau@efficios.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
Jérémie Galarneau [Tue, 26 Mar 2013 00:28:34 +0000 (20:28 -0400)]
Tests: Add "fork" ust regression test
Based on the "fork" test formerly part of lttng-ust.
Signed-off-by: Jérémie Galarneau <jeremie.galarneau@efficios.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
Jérémie Galarneau [Tue, 26 Mar 2013 00:28:33 +0000 (20:28 -0400)]
Tests: Add "exit-fast" ust regression test
Based on the "exit-fast" test formerly part of lttng-ust.
Signed-off-by: Jérémie Galarneau <jeremie.galarneau@efficios.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
Jérémie Galarneau [Tue, 26 Mar 2013 00:28:32 +0000 (20:28 -0400)]
Tests: Add "daemon" ust regression test
Based on the "daemon" test formerly part of lttng-ust.
Signed-off-by: Jérémie Galarneau <jeremie.galarneau@efficios.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
Jérémie Galarneau [Tue, 26 Mar 2013 00:28:31 +0000 (20:28 -0400)]
Tests: Add "linking" ust regression test
Based on the "demo" test formerly part of lttng-ust. Tests userspace
tracing with directly, statically and dynamically linked providers. Also
meant as an exemple of building and tracing an application with all
types of provider linking.
Signed-off-by: Jérémie Galarneau <jeremie.galarneau@efficios.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
Jérémie Galarneau [Tue, 26 Mar 2013 00:28:30 +0000 (20:28 -0400)]
Tests: Add Python test_utils module
Basic Python test framework based on the lttng-tools Python bindings
that facilitates the creation of a tracing session saving its trace in
a temporary location, the activation of events in the UST domain and
clean teardown of the test session.
Also provides basic TAP output facilities.
Signed-off-by: Jérémie Galarneau <jeremie.galarneau@efficios.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
Mathieu Desnoyers [Tue, 26 Mar 2013 02:35:46 +0000 (22:35 -0400)]
Fix: UST context activation
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Mon, 25 Mar 2013 20:30:12 +0000 (16:30 -0400)]
Fix: lttng create default name check
Fixes #449
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Mon, 25 Mar 2013 20:15:37 +0000 (16:15 -0400)]
Fix: add missing error output
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Mon, 25 Mar 2013 19:58:38 +0000 (15:58 -0400)]
Fix: minor errors in lttng.1 man page
Fixes #448
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Mon, 25 Mar 2013 19:30:08 +0000 (15:30 -0400)]
Fix: kernel function event was listed as probe
Fixes #442
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Mon, 25 Mar 2013 19:07:30 +0000 (15:07 -0400)]
Add unsupported error code to lttng cmd line
Fixes #438
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Mon, 25 Mar 2013 18:44:41 +0000 (14:44 -0400)]
Fix: typo in the create command help and man page
Fixes #436
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Mon, 25 Mar 2013 18:41:22 +0000 (14:41 -0400)]
Fix: session name max length was not handled correctly
Fixes #435
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Mon, 25 Mar 2013 17:31:51 +0000 (13:31 -0400)]
Fix: lttng UI failed to report error 19
Fixes #437
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Mon, 25 Mar 2013 15:03:12 +0000 (11:03 -0400)]
Fix: validate expanded path NULL ptr in relayd
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Mon, 25 Mar 2013 14:36:37 +0000 (10:36 -0400)]
Add missing files for make dist
Fixes #480
Signed-off-by: David Goulet <dgoulet@efficios.com>
Christian Babeux [Fri, 22 Mar 2013 19:49:19 +0000 (15:49 -0400)]
Add optional Perl dependency requirement to README
Signed-off-by: Christian Babeux <christian.babeux@efficios.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Mon, 25 Mar 2013 14:16:01 +0000 (10:16 -0400)]
Tests: remove unused run script
Signed-off-by: David Goulet <dgoulet@efficios.com>
Jérémie Galarneau [Mon, 25 Mar 2013 14:13:26 +0000 (10:13 -0400)]
Add missing buffers-uid folder in test Makefile
Signed-off-by: Jérémie Galarneau <jeremie.galarneau@efficios.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
Christian Babeux [Thu, 21 Mar 2013 19:56:47 +0000 (15:56 -0400)]
Tests: Do not exit when a failure occurs in test_buffers_uid
Signed-off-by: Christian Babeux <christian.babeux@efficios.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
Christian Babeux [Thu, 21 Mar 2013 19:56:46 +0000 (15:56 -0400)]
Tests: Cleanup tests runner that are no longer required
Test runners have been superseeded by testlists and the prove utility.
Signed-off-by: Christian Babeux <christian.babeux@efficios.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
Christian Babeux [Thu, 21 Mar 2013 19:56:45 +0000 (15:56 -0400)]
Tests: Use Perl prove as the testsuite runner
Currently the regression and unit testsuites are runned via a custom
runner script. By using the Perl prove utility, we can run the
testsuites and also gain additionnal features such as: parallel jobs,
separate testlists, etc.
This commit modify the make check target to run Perl prove as the
testsuite runner.
Testlist:
tests/unit_tests : unit tests.
tests/fast_regression : a fast regression testsuite.
tests/long_regression : a long regression testsuite (includes slow tests such
as test_low_throughput and others).
tests/root_regression : a testsuite for tests that need root access
(mostly tests using lttng-modules and bandwith limits).
Running a testsuite:
$ cd lttng-tools/tests
$ ./run.sh <testsuite>
One can also run tests manually using prove:
$ prove --exec '' path/to/test
OR
$ prove --exec '' - < testlist
Signed-off-by: Christian Babeux <christian.babeux@efficios.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
Christian Babeux [Thu, 21 Mar 2013 19:56:44 +0000 (15:56 -0400)]
Tests: Fix first line of output to follow TAP guidelines
From the Test::Harness::TAP documentation [1]:
The plan tells how many tests will be run, or how many tests have
run. It's a check that the test file hasn't stopped prematurely.
It must appear once, whether at the beginning or end of the output.
The TAP plan *must* be the first line of output of any tests. Currently,
most of the tests output their description and then the TAP plan. This
can cause issues while parsing the test output for "strict" TAP parser
such as the one used in the prove tool.
This commit ensure that the first line outputted by any tests is the TAP
plan.
Signed-off-by: Christian Babeux <christian.babeux@efficios.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
This page took 0.045857 seconds and 5 git commands to generate.