David Goulet [Tue, 8 Nov 2011 23:08:00 +0000 (18:08 -0500)]
Cleanup ust-app.c and make it more modular
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Tue, 8 Nov 2011 19:30:20 +0000 (14:30 -0500)]
Fix possible NULL pointer dereference
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Tue, 8 Nov 2011 18:22:40 +0000 (13:22 -0500)]
Fix wrong pathname creation for UST metadata
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Tue, 8 Nov 2011 18:14:22 +0000 (13:14 -0500)]
Fix directory creation of UST traces
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Tue, 8 Nov 2011 17:28:34 +0000 (12:28 -0500)]
Fix useless context hashtable size and segfault on destroy
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Tue, 8 Nov 2011 17:07:07 +0000 (12:07 -0500)]
Add auto start UST trace support
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
Mathieu Desnoyers [Tue, 8 Nov 2011 14:42:17 +0000 (09:42 -0500)]
UST consumer: perform buffer flush on hang up
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
David Goulet [Mon, 7 Nov 2011 21:38:04 +0000 (16:38 -0500)]
Fix wrong returned valu on UST start trace
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Mon, 7 Nov 2011 21:27:00 +0000 (16:27 -0500)]
Fix build system for urcu wfqueue
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Mon, 7 Nov 2011 21:21:22 +0000 (16:21 -0500)]
Auto creation of chan/event on apps registration
On UST apps registration, all channel(s) and event(s) from the UST
global domain are created on the apps.
Adds a new check for urcu wait-free queue in configure.ac
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Mon, 7 Nov 2011 17:07:34 +0000 (12:07 -0500)]
Add missing function references with no UST support
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
Mathieu Desnoyers [Sat, 5 Nov 2011 17:57:01 +0000 (13:57 -0400)]
Fix incorrect parenthesis for poll test in consumer
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Sat, 5 Nov 2011 17:45:35 +0000 (13:45 -0400)]
UST consumer: implement missing ust-specific callbacks + fixes.
Also fix consumer handling of poll fd: a mask should be used.
Also fix UST stream output passed to the consumer (the fix is a hack
currently, left a FIXME).
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Sat, 5 Nov 2011 15:31:24 +0000 (11:31 -0400)]
Add missing rcu_read_unlock on error paths
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Sat, 5 Nov 2011 15:27:53 +0000 (11:27 -0400)]
Fix order of streams
Use a list instead of hash table to send streams in correct order.
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Fri, 4 Nov 2011 12:31:56 +0000 (08:31 -0400)]
UST consumer interaction fix: send all channel streams
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Fri, 4 Nov 2011 11:32:26 +0000 (07:32 -0400)]
LTTng-UST support: --disable-lttng-ust build option
From now on, configure fails if lttng-ust is not found.
--disable-lttng-ust must be explicitely specified to build without UST
support.
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Thu, 3 Nov 2011 23:33:24 +0000 (19:33 -0400)]
ust consumer: flag shm/wait fd as copy
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Thu, 3 Nov 2011 23:18:51 +0000 (19:18 -0400)]
ust consumer: fix double close
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Thu, 3 Nov 2011 19:18:04 +0000 (15:18 -0400)]
consumer handling fix: send metadata channel shm size
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Thu, 3 Nov 2011 19:01:43 +0000 (15:01 -0400)]
Fix UST consumer FD send: channels only send one FD
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Thu, 3 Nov 2011 18:52:01 +0000 (14:52 -0400)]
Fix debug message in send consumer fd.
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
David Goulet [Thu, 3 Nov 2011 18:26:26 +0000 (14:26 -0400)]
Remove *bad* debug printf
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Thu, 3 Nov 2011 17:19:06 +0000 (13:19 -0400)]
Change linking libs using new UST names
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Thu, 3 Nov 2011 17:09:22 +0000 (13:09 -0400)]
Fix configure.ac using new UST headers location
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Thu, 3 Nov 2011 16:55:11 +0000 (12:55 -0400)]
Change UST header location and update in tree headers
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Thu, 3 Nov 2011 15:59:02 +0000 (11:59 -0400)]
Support urcu 0.6.6 with the likely/unlikely API change
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Thu, 3 Nov 2011 15:34:59 +0000 (11:34 -0400)]
Rename ltt-sessiond to lttng-sessiond
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Thu, 3 Nov 2011 15:06:40 +0000 (11:06 -0400)]
Fix UST renaming and update ust headers
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Thu, 3 Nov 2011 15:00:50 +0000 (11:00 -0400)]
Update README and TODO
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Thu, 3 Nov 2011 14:13:01 +0000 (10:13 -0400)]
Fix build system with libustcomm removed
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Thu, 3 Nov 2011 14:01:17 +0000 (10:01 -0400)]
Remove unused and empty lib
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
Thomas Petazzoni [Thu, 3 Nov 2011 11:51:21 +0000 (12:51 +0100)]
ltt-sessiond: use short options for modprobe in order to support Busybox
Many embedded systems are based on Busybox, and therefore use the
Busybox implementation of modprobe. This implementation does not
support long options such as --remove and --quiet, only short options
such as -r and -q are supported.
This patches changes ltt-sessiond to use the short options, which are
more widely available, and allows lttng to work easily on a
Busybox-based system.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
David Goulet [Wed, 2 Nov 2011 19:44:27 +0000 (15:44 -0400)]
Preliminary work for full UST support
Add hashtable support for all UST data structure. At this point, enable
channel and event works with the global UST domain. The interaction with
the ust consumer has problems for now thus not working at this stage.
NOTICE: This commit does NOT work with the user space tracer yet. Please
refer to next commit for working version.
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Wed, 2 Nov 2011 19:43:50 +0000 (15:43 -0400)]
Update RCU hashtable from upstream urcu
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Thu, 27 Oct 2011 12:50:45 +0000 (14:50 +0200)]
Import hashtable files from URCU upstream git
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Thu, 27 Oct 2011 12:49:48 +0000 (14:49 +0200)]
Basic hashtable support for UST
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
Mathieu Desnoyers [Wed, 2 Nov 2011 14:06:49 +0000 (10:06 -0400)]
Update documentation following babeltrace UI change
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Thu, 27 Oct 2011 12:33:28 +0000 (14:33 +0200)]
UST support: add UST control commands
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Thu, 27 Oct 2011 12:02:40 +0000 (08:02 -0400)]
Fix kconsumerd number of fd expected
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
David Goulet [Wed, 26 Oct 2011 11:50:16 +0000 (07:50 -0400)]
Add lttng-consumerd to gitignore
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Wed, 26 Oct 2011 11:49:38 +0000 (07:49 -0400)]
Remove unused variable
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Tue, 25 Oct 2011 19:29:50 +0000 (15:29 -0400)]
API change for lttng_get_readeable_code
The liblttngctl lttng_get_readeable_code call is renamed to
lttng_strerror.
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Tue, 25 Oct 2011 19:26:09 +0000 (15:26 -0400)]
Fix array size in kconsumer add stream
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Tue, 25 Oct 2011 19:25:11 +0000 (15:25 -0400)]
Fix inline function bad definition
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
Mathieu Desnoyers [Sun, 23 Oct 2011 13:23:12 +0000 (09:23 -0400)]
Use UST comm lib
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Sun, 23 Oct 2011 12:50:13 +0000 (08:50 -0400)]
Update UST messages
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Sun, 23 Oct 2011 01:06:11 +0000 (21:06 -0400)]
UST 2.0 support
Refactoring of the consumer/sessiond interaction so the consumer
supports applications instrumented with libust (UST 2.0).
At this point, more testing of interaction between libust and sessiond
is required.
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
David Goulet [Wed, 5 Oct 2011 22:40:19 +0000 (18:40 -0400)]
Fix disable event
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Wed, 5 Oct 2011 22:20:34 +0000 (18:20 -0400)]
Add EEXIST support for kernel event on the tracer side
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Wed, 5 Oct 2011 22:09:23 +0000 (18:09 -0400)]
Fix bad channel handling on enable-event
The channel attributes and name were not passed to the create function
when a channel is requested and did not exist on enable-event.
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Tue, 4 Oct 2011 21:53:16 +0000 (17:53 -0400)]
Fix comments in lttng-sessiond-comm code
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Tue, 4 Oct 2011 21:49:27 +0000 (17:49 -0400)]
Add recv fds function to lttng-comm API
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Tue, 4 Oct 2011 21:27:50 +0000 (17:27 -0400)]
Add missing mutex lock for kconsumerd pid
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Tue, 4 Oct 2011 21:15:32 +0000 (17:15 -0400)]
Add sem_wait timeout on the kconsumerd thread
It's unlikely to happen but is the kconsumerd was not able to send us
the sock ready command, at least the session daemon will not stall
forever. A 30 seconds timeout is added and error is handle after that.
Also adds the handling of the sem_init ret value and adds mutex lock
around the kconsumerd pid in the same function.
There was also a problem on error code handling where LTTCOMM error was
returned by spawn kconsumerd function but handled as if it might be
negative at the end of the call chain. This was preventing to return the
right error code to the client when the kconsumerd failed.
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Tue, 4 Oct 2011 20:24:10 +0000 (16:24 -0400)]
Remove session list lock acquisition of the search
The lock/unlock of the session list in the find session by name function
is removed thus the caller must held the lock before calling that search
function.
Also, the path and name are now static size on the stack and not
allocated strings at session creation.
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Tue, 4 Oct 2011 14:54:05 +0000 (10:54 -0400)]
Fix possible use of uninitialized variable
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Mon, 3 Oct 2011 19:23:16 +0000 (15:23 -0400)]
Fix session list deadlock
On session destroy, the session list lock is acquired but this call
could be made inside a section where this lock is already acquired. The
call has been changed to using the session pointer and not the name thus
removing a useless list walk.
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Mon, 3 Oct 2011 18:46:40 +0000 (14:46 -0400)]
Fix enable syscall and bad value of poll set size
First, when enabling syscall tracing, on success 0 is return so we don't
add this value to the event list or else we were polling on fd 0 which
is not a valid event fd. A normal kernel create event, the fd of that
event is returned from the ioctl which is not the case for syscalls.
Second, the poll size was not reset when updating the kernel poll set so
at each kernel poll update, the value was not coherent with the real
poll size and thus creating unstable behavior (unknown).
This commit MIGHT fix a blocking problem happening when using a custom
channel and enabling syscall on it. This issue was reported by Julien
Desfossez <julien.desfossez@polymtl.ca>.
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
Yannick Brosseau [Mon, 19 Sep 2011 21:17:56 +0000 (17:17 -0400)]
Don't report an error when the last section of the path exist in mkdir_recursive
Minor adjustment for perror call changed to PERROR using the lttngerr.h
interface.
Signed-off-by: Yannick Brosseau <yannick.brosseau@gmail.com>
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
Mathieu Desnoyers [Fri, 30 Sep 2011 15:32:22 +0000 (11:32 -0400)]
Version 2.0-pre14
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Fri, 30 Sep 2011 15:23:32 +0000 (11:23 -0400)]
Implement enable all vs enable tracepoints vs enable syscalls
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Fri, 30 Sep 2011 13:58:50 +0000 (09:58 -0400)]
Update documentation for enable all events
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
David Goulet [Fri, 30 Sep 2011 13:42:10 +0000 (09:42 -0400)]
Enable all events command enable also syscalls
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Thu, 29 Sep 2011 20:24:16 +0000 (16:24 -0400)]
Add liburcu function check to build system
rcu_thread_online and rcu_thread_offline are needed and only available
on urcu version >= 0.6.5
Reported-by: Yannick Brosseau <yannick.brosseau@polymtl.ca>
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Thu, 29 Sep 2011 17:16:55 +0000 (13:16 -0400)]
Write debug message on stderr
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Thu, 29 Sep 2011 16:10:36 +0000 (12:10 -0400)]
Fix epoll not handling signal interruption
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Tue, 27 Sep 2011 14:06:42 +0000 (10:06 -0400)]
Rename traceable-app and change ust app call
Rename traceable-app to ust-app.c/.h and all calls to ust_app_* to be
consistent with the code base.
Add a channel_ust_copy() to copy UST channel and event list. Mostly used
for channel copy between ust session and ust app.
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
Mathieu Desnoyers [Tue, 27 Sep 2011 14:07:42 +0000 (10:07 -0400)]
Update quickstart, describing syscall events
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Tue, 27 Sep 2011 13:30:49 +0000 (09:30 -0400)]
ltt-kconsumerd: Fix incorrect typing
ltt-kconsumerd.c: In function ‘on_recv_fd’:
ltt-kconsumerd.c:298: warning: passing argument 2 of
‘kernctl_get_mmap_len’ from incompatible pointer type
../include/lttng-kernel-ctl.h:47: note: expected ‘long unsigned int *’
but argument is of type ‘size_t *’
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
David Goulet [Mon, 26 Sep 2011 22:33:16 +0000 (18:33 -0400)]
Add enable channel support for UST
Also improve data structure for UST session control to fit new model
where we will have a list of lttng domain to indentify the ust session.
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Mon, 26 Sep 2011 22:32:45 +0000 (18:32 -0400)]
Fix UST define in global headers
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Mon, 26 Sep 2011 22:30:54 +0000 (18:30 -0400)]
Update UST ABI and add UST some error message
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Mon, 26 Sep 2011 22:30:28 +0000 (18:30 -0400)]
Fix channel name in all kernel event test
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Fri, 23 Sep 2011 16:54:49 +0000 (12:54 -0400)]
Add default ust channel attributes
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
Mathieu Desnoyers [Mon, 26 Sep 2011 18:59:49 +0000 (14:59 -0400)]
kconsumerd: fix strict aliasing
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Mon, 26 Sep 2011 18:52:13 +0000 (14:52 -0400)]
Add missing rculfhash.h header to make dist
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Mon, 26 Sep 2011 18:48:41 +0000 (14:48 -0400)]
Merge rculfhash into lttng-tools
rculfhash is ready enough for what is needed by lttng-tools. Merge code
as from commit
4dd4a47355d9d870d482248786b4adf8b1317bfe of
urcu/ht-shrink branch.
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
David Goulet [Thu, 22 Sep 2011 22:17:19 +0000 (18:17 -0400)]
Improve debugging and add PERROR call
Add three level of verbosity with DBG, DBG2 and DBG3.
Each perror() call from now on should use PERROR().
Migration to these new debug facilities will come later on and
progressively.
To increase debug level use -v, -vv and -vvv respectively.
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Thu, 22 Sep 2011 21:14:58 +0000 (17:14 -0400)]
Missing negative sign to interpret error code
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Thu, 22 Sep 2011 20:22:02 +0000 (16:22 -0400)]
Fix enable all syscalls
The -a -k --syscall was enabling all syscalls and all tracepoints.
Fix this issues by adding the enabel_kernel_event_syscalls.
At this commit, there is a problem with the list event that does not
list correctly all syscalls.
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Mon, 19 Sep 2011 20:49:41 +0000 (16:49 -0400)]
Replace sys_enter/exit from tests
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Mon, 19 Sep 2011 20:44:35 +0000 (16:44 -0400)]
Fix wrong logical operator
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Mon, 19 Sep 2011 20:23:47 +0000 (16:23 -0400)]
Fix uninitialized pointer
Causing the free() to fail on error.
Reported-by: Yannick Brosseau <yannick.brosseau@polymtl.ca>
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
Mathieu Desnoyers [Mon, 19 Sep 2011 14:12:08 +0000 (10:12 -0400)]
Rename syscalls -> syscall in UI/API/ABI
For consistency with other tracing modes.
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Fri, 16 Sep 2011 23:33:28 +0000 (19:33 -0400)]
Add support for --syscalls
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
David Goulet [Fri, 16 Sep 2011 16:06:08 +0000 (12:06 -0400)]
Update version to 2.0-pre13
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Fri, 16 Sep 2011 16:01:01 +0000 (12:01 -0400)]
Add missing file to extra dist
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Fri, 16 Sep 2011 15:32:50 +0000 (11:32 -0400)]
Add TODO file
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Thu, 15 Sep 2011 23:24:23 +0000 (19:24 -0400)]
Major code cleanup
Cleanup main.c of the session daemon. The main switch case to handle
client command is made more modular and clearer. Each command has a
function associated with it beginning by 'cmd_*'. Also adds channel.c/.h
and event.c/.h containing helper function to execute client commands.
The reste of the modified code is simple cleanup.
Some minor bugs were fixed also by this cleanup. All and for all, this
makes easier to maintain the session daeamon code base.
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Thu, 15 Sep 2011 23:23:52 +0000 (19:23 -0400)]
Minor fixes to header files
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Fri, 9 Sep 2011 18:43:13 +0000 (14:43 -0400)]
Add poll/epoll compat layer for session daemon
This is a big modification of the session daemon code base. Every thread
is monitoring file descriptors using a poll set. This commit adds a
compat wrapper for the use of poll(2) or epoll(7) determined at compile
time on if the epoll API is available. Since epoll(7) is Linux specific,
the poll(2) fallback is necessary for portability.
By default, epoll(7) will be used having the --enable-epoll default to yes.
To use the poll(2) API, simply run with --disable-epoll when running
configure.
With this implementation, some fixes are also introduced.
* Two missing notification to the consumer when the default channel is
created.
* Memory and socket file descriptor leak when connect()/close() is
done by the daemon alive check of the lttngctl API.
* Root check (UID=0) on cleanup() before removing LTTNG_RUNDIR.
* Comments here and there.
At this commit, tests were made on the CPU hot plug feature, multiple
UST registration at the same time and git tree tests. All passed for
poll(2) and epoll(7) implementation.
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Mon, 12 Sep 2011 14:53:26 +0000 (10:53 -0400)]
Add epoll check to autoconf and Makefile
Adds two m4 macros to check for epoll(7) API and change the gitignore to
fit thoses changes.
Also change the Makefile to add COMPAT_EPOLL value in order to select
the right source file at compile time.
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Tue, 13 Sep 2011 16:58:33 +0000 (12:58 -0400)]
Fix enable-channel that did not handle correctly lttng domains
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
Mathieu Desnoyers [Sat, 10 Sep 2011 19:17:56 +0000 (12:17 -0700)]
ltt-sessiond: fix 2 double-unlock
After a list iteration, the pointer is not null, so the unlock would
trigger.
The second path modified does 2 unlock when taking the if () branch.
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
David Goulet [Thu, 8 Sep 2011 21:23:22 +0000 (17:23 -0400)]
Cleanup poll handling events
Make the accept in the thread client only if we have a POLLIN request.
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Thu, 8 Sep 2011 19:15:35 +0000 (15:15 -0400)]
Improve poll management of registration thread
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Thu, 8 Sep 2011 16:27:19 +0000 (12:27 -0400)]
Increase listen() connexion limit
To handle a large number of UST registration at the same time, this
limit needs to be raised.
See /proc/sys/net/core/somaxconn for the maximum possible connexions.
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Thu, 8 Sep 2011 14:35:11 +0000 (10:35 -0400)]
Fix missing events for all threads pollfd struct
The thread_quit_pipe event field of the pollfd was not set nor zeroed.
At high rate UST registration and modifying the pollfd set frequently,
the session daemon hang on the poll() call even if the thread_quit_pipe
was closed and explain by poll() "undefined behavior".
Also add a MSG() and ERR() statement after some errors.
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Wed, 7 Sep 2011 19:50:08 +0000 (15:50 -0400)]
Add a safety check to nbfd of apps cmd pollfd
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
This page took 0.050424 seconds and 4 git commands to generate.