David Goulet [Thu, 7 Jul 2011 17:36:28 +0000 (13:36 -0400)]
Add new kernel consumer name to gitignore
Signed-off-by: David Goulet <dgoulet@ev0ke.net>
Julien Desfossez [Thu, 7 Jul 2011 15:11:38 +0000 (11:11 -0400)]
Rename kconsumerd to ltt-kconsumerd
Avoid the confusion with a kernel thread in the process list.
Signed-off-by: Julien Desfossez <julien.desfossez@polymtl.ca>
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
Julien Desfossez [Thu, 7 Jul 2011 15:11:37 +0000 (11:11 -0400)]
Create a library for the kernel consumer
Kconsumerd functionnalities has been extracted to a library to allow
external tools to implement the kernel consumer functions.
Kconsumerd is now a daemon using the library, everything works as
before for this particular case.
Signed-off-by: Julien Desfossez <julien.desfossez@polymtl.ca>
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Thu, 7 Jul 2011 15:18:01 +0000 (11:18 -0400)]
Fix segfault on free() pointer
Reported-by: Julien Desfossez <julien.desfossez@polymtl.ca>
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
Simon Marchi [Wed, 6 Jul 2011 13:25:42 +0000 (09:25 -0400)]
Add list-commands and list-options to lttng ui
Those commands are mostly for bash auto completion and does not require
heavy parsing for that matter.
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Thu, 7 Jul 2011 14:29:19 +0000 (10:29 -0400)]
Add detection of debugfs and kernel module loading
The session daemon now detects the path of the debugfs mount point or
create and mount it at a default location (/mnt/debugfs).
Then, the kernel module are loaded automatically, if present, and the
kernel tracer fd is opened at the previous detected debugfs path.
The kernel module list is hardcoded for now.
NOTE: There is no module unload at the session daemon cleanup. This is
to avoid removing tracing capabilities when a trace is ongoing and
written to disk.
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Thu, 7 Jul 2011 13:53:12 +0000 (09:53 -0400)]
Remove unused header file
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Thu, 7 Jul 2011 13:52:07 +0000 (09:52 -0400)]
Disable user-space tracer control
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Wed, 6 Jul 2011 18:02:21 +0000 (14:02 -0400)]
Fix missing tracing group when UID=0
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Wed, 6 Jul 2011 17:47:37 +0000 (13:47 -0400)]
Change configuration file and trace output dir
The configuration file containing the session name information is now at
the HOME location and named ".lttngrc".
The trace output directory is now at the HOME location and named
"lttng-traces" containing the traces of each sessions identified by the
top level directory called "session_name-date-time".
Also fix the metadata's path that was pointing to the old default path
in /tmp/lttng.
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Thu, 30 Jun 2011 21:20:06 +0000 (17:20 -0400)]
Add set session command to lttng cli
This command change the session name in the config file of the config
directory (.lttng).
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Thu, 30 Jun 2011 20:53:59 +0000 (16:53 -0400)]
Add session name option to all command
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Thu, 30 Jun 2011 20:39:33 +0000 (16:39 -0400)]
Overwrite the config file on create session
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Thu, 30 Jun 2011 20:33:04 +0000 (16:33 -0400)]
Don't remove the config directory on destroy
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Thu, 30 Jun 2011 19:39:59 +0000 (15:39 -0400)]
Improve trace output path and config path
Now, the default config directory is placed in the home directory and
the trace output directory is set inside that config directory with name
being the session name with date and time.
Add get home functio to utils.
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Thu, 30 Jun 2011 16:34:57 +0000 (12:34 -0400)]
Fix comments spacing
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Thu, 30 Jun 2011 16:20:03 +0000 (12:20 -0400)]
Add utils.c and recursive mkdir function
This fixes the channel path that was wrong. Each channel has now it's
own trace name file using the channel name.
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
Mathieu Desnoyers [Thu, 30 Jun 2011 15:18:23 +0000 (11:18 -0400)]
default channel selection cleanup
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Thu, 30 Jun 2011 15:10:35 +0000 (11:10 -0400)]
lttng.h cleanup
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Julien Desfossez [Wed, 29 Jun 2011 21:03:24 +0000 (17:03 -0400)]
Consume with mmap if enabled
Signed-off-by: Julien Desfossez <julien.desfossez@polymtl.ca>
Julien Desfossez [Wed, 29 Jun 2011 21:03:23 +0000 (17:03 -0400)]
Add channel output method selection
Sync with kernel code to select the output mode between splice and mmap.
Splice remains the default method.
Signed-off-by: Julien Desfossez <julien.desfossez@polymtl.ca>
David Goulet [Wed, 29 Jun 2011 22:07:12 +0000 (18:07 -0400)]
Fix infinite loop when enabling all events
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Wed, 29 Jun 2011 22:05:06 +0000 (18:05 -0400)]
Fix possible null pointer
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Wed, 29 Jun 2011 21:23:26 +0000 (17:23 -0400)]
Add kernel context support
At this point, all context types and perf IDs are hardcoded in the usage
function of the add-context command. Future works will remove them and
port them into the code tree.
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Wed, 29 Jun 2011 18:47:18 +0000 (14:47 -0400)]
Add disable kernel channel support
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Wed, 29 Jun 2011 18:21:21 +0000 (14:21 -0400)]
Add enable kernel channel support
Fix a null pointer dereference in the kernel session teardown.
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Wed, 29 Jun 2011 17:56:29 +0000 (13:56 -0400)]
Add disable all support and fix enable all
Disable all kernel events support.
Fix the enable all kernel events that was not doing the right thing
considering the previous changes in the latest commits.
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Wed, 29 Jun 2011 17:27:09 +0000 (13:27 -0400)]
Add enable kernel event using the enable ioctl
Two helper functions are added which are get an event by name and a
channel by name.
The disable and enable event command was modified to use these two
functions.
Overall, it's now possible to enable/disable at will kernel events.
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Wed, 29 Jun 2011 16:49:50 +0000 (12:49 -0400)]
Fix comment
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Wed, 29 Jun 2011 16:48:35 +0000 (12:48 -0400)]
Add disable kernel event support
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Mon, 27 Jun 2011 20:36:27 +0000 (16:36 -0400)]
Add FD_CLOEXEC option to all anonymous FDs
Upon execlp() some anonymous file descriptors from the kernel tracer
could be dup and thus making the refcount always > 1 on the lttng kernel
tracer side.
Acked-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Mon, 27 Jun 2011 20:36:22 +0000 (16:36 -0400)]
Fix possible error on close
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Mon, 27 Jun 2011 19:21:45 +0000 (15:21 -0400)]
Rename and add missing header file
Rename config.c/.h to conf.* to avoid confusion with the autogenerated
config.h from autoconf.
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Mon, 27 Jun 2011 19:19:31 +0000 (15:19 -0400)]
Add kernel context ioctl
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Wed, 15 Jun 2011 21:29:58 +0000 (17:29 -0400)]
Major changes
ltt-sessiond
-------------
Change command type to add the LTTNG_ prefix. Only kernel command at
this point working with the new kernel tracer lttng 2.0.
Adds support for the default channel.
Kernel tracer session, metadata and streams opening are now handled by
the session daemon by removing the public commands for those options.
This means that the public API of lttng-tools DO NOT permit to control
these three actions anymore.
Adds ulimit setting for open files (65535) for sessiond running as
UID=0.
lttng.h
-------------
As mention before, create_session, create_stream and open_metadata is
removed from the public API.
UUIDs are not exposed anymore by the API. Everything is done with the
session name.
New lttng event structure added in order to support kernel tracepoints,
kprobes and function tracer.
New lttng channel structure to create a kernel channel. Add the lttng
channel attribute structure also where to put the channel attributes.
libkernelctl
-------------
Adds flush buffer function and wait quiescent for kernel tracer.
Uses the new enable/disable kernel ioctl that replaces create event.
lttng
-------------
*MAJOR*: This is the inital import of the git-alike UI.
Some features are still not implemented but all the basics and more are
there.
This commit introduce a new feature where the session name is kept in
the current directory where the create command was executed (or
specified by the user with --path). A .lttng directory is created and a
config file that contains, for now, the session name. So, in order to
apply command on a session, you either specify it on the command line or
go in the directory where your .lttng dir reside.
A lot of code was changed/added/removed from all over the lttng-tools
tree to fit this big change. Consider this commit to be an almost
complete rewrite of the original git command line UI and a big part of
the public API.
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
Mathieu Desnoyers [Fri, 24 Jun 2011 01:04:13 +0000 (21:04 -0400)]
Fix message argument type
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
David Goulet [Tue, 14 Jun 2011 19:51:13 +0000 (15:51 -0400)]
Fix mkdir error handling
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
Mathieu Desnoyers [Fri, 10 Jun 2011 22:26:49 +0000 (18:26 -0400)]
Remove unneeded liburcu symbol check
synchronize_rcu symbol is going away with userspace rcu 0.6. lttng-tools
is not using this library directly anyway, just the list header provided
by urcu. Therefore only check for the list header.
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
David Goulet [Fri, 10 Jun 2011 16:12:10 +0000 (12:12 -0400)]
Internal librairies not being installed anymore
Signed-off-by: David Goulet <dgoulet@ev0ke.net>
Mathieu Desnoyers [Wed, 8 Jun 2011 21:54:18 +0000 (17:54 -0400)]
Add lttng-cli.txt RFC
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
David Goulet [Wed, 8 Jun 2011 18:06:40 +0000 (14:06 -0400)]
Initial import of libustctl and libustcomm
Import and clean the libustctl and libustcomm code from the UST git
tree. This import is done at the ust git head commit:
161239e0409832d65cb773a08d364b29945b18a7
Small modifications was needed but nothing major in the API and basic
functionnalities.
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Wed, 8 Jun 2011 16:33:52 +0000 (12:33 -0400)]
Fix wrong include file name in Makefile.am
Fix the line and comment it out so that lttng.h is not being installed
at this moment because of heavy development and possible API breakage.
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Thu, 2 Jun 2011 19:01:45 +0000 (15:01 -0400)]
Add TODOs for session daemon
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Thu, 2 Jun 2011 18:41:41 +0000 (14:41 -0400)]
Add kernel tracer check on kernel command
Check again at each kernel command for the kernel tracer. If the module
get loaded AFTER the session daemon, kernel tracing will be available.
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Thu, 2 Jun 2011 17:23:22 +0000 (13:23 -0400)]
kconsumerd execlp set to verbose for debug
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Thu, 2 Jun 2011 17:22:40 +0000 (13:22 -0400)]
Close client socket in sessiond
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Thu, 2 Jun 2011 17:20:05 +0000 (13:20 -0400)]
kconsumerd dying when sessiond shutdown cmd socket
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Wed, 1 Jun 2011 21:10:45 +0000 (17:10 -0400)]
Core modification and listing kernel event support
File descriptor sent to the kconsumerd are now sent one at a time. The
problem was that there is a maximum packet size once the control buffer
is used with recvmsg/sendmsg. This upper bound can be read and set at :
/proc/sys/net/core/optmem_max.
Also, the kconsumerd execlp is set to verbose at this time for debugging
purpose.
Introduce --list-events to list all kernel events with the -k option
added. NOT supported for user-space at this point.
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Wed, 1 Jun 2011 21:29:21 +0000 (17:29 -0400)]
Fix kconsumerd multiple spawn bug
The kconsumerd thread was spawned even if there was already an existing
kconsumerd thread.
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Wed, 1 Jun 2011 21:14:34 +0000 (17:14 -0400)]
Fix already exist lttng rundir error
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Wed, 1 Jun 2011 15:34:06 +0000 (11:34 -0400)]
Set kconsumerd to quiet on execlp
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
Julien Desfossez [Fri, 27 May 2011 22:07:48 +0000 (00:07 +0200)]
Don't quit when all FD hang up
We now wait for the STOP command to exit the polling thread.
When we receive this command and all FD has hung up (all data is
consumed) then we can exit cleanly.
We also close every fd as soon as they report an error.
Signed-off-by: Julien Desfossez <julien.desfossez@polymtl.ca>
David Goulet [Mon, 30 May 2011 22:06:50 +0000 (18:06 -0400)]
Add listing kernel event support
Introduce the --list-events option which list all tracing event of the
kernel or/and an application.
Only kernel support here. User-space integration is coming.
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Mon, 30 May 2011 15:53:02 +0000 (11:53 -0400)]
Remove useless zero initialization
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Fri, 27 May 2011 21:27:41 +0000 (17:27 -0400)]
Modify kconsumerd thread and spawning function
In the kconsumerd thread, the one use case where the kconsumerd tells us
he's ready but we are unable to connect is now validate using the
kconsumerd_pid in the spawn_kconsumerd_thread function.
Also, we do not iterate over and over on the error socket anymore. Upon
receiving an error from the kconsumerd, this means that the daemon will
quit and thus the thread is no longer necessary.
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Fri, 27 May 2011 20:40:44 +0000 (16:40 -0400)]
Add lttng-kconsumerd.h
This header files contains data shared between the kconsumerd daemon and
the session daemon.
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
Julien Desfossez [Fri, 27 May 2011 20:41:42 +0000 (22:41 +0200)]
Indent fix to switch
Coding style...
Signed-off-by: Julien Desfossez <julien.desfossez@polymtl.ca>
Julien Desfossez [Fri, 27 May 2011 20:41:41 +0000 (22:41 +0200)]
Ignore first SIGINT
Add a counter to ignore the first ctrl+c (especially useful when
sessiond spawn kconsumerd). If the user presses ctrl+c an other time,
kconsumerd dies as expected.
Signed-off-by: Julien Desfossez <julien.desfossez@polymtl.ca>
David Goulet [Fri, 27 May 2011 20:19:57 +0000 (16:19 -0400)]
Add missing open() option to kconsumerd
From: Julien Desfossez <julien.desfossez@polymtl.ca>
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Fri, 27 May 2011 20:17:51 +0000 (16:17 -0400)]
Cleanup liblttngctl
Cleanup code, function declaration and comments.
Rename the lttng_check_session_daemon function to
lttng_session_daemon_alive.
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Fri, 27 May 2011 19:56:40 +0000 (15:56 -0400)]
Fix errors due to lttng.h cleanup
Rename lttng/lttng.h to options.h in order to avoid confusion with the
public lttng.h header file.
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Fri, 27 May 2011 19:51:45 +0000 (15:51 -0400)]
Cleanup lttng.h public header
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Fri, 27 May 2011 18:29:12 +0000 (14:29 -0400)]
Add kernel trace destroy functions
Adds clean trace data structure cleanup using trace_destroy_kernel_*
functions.
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Fri, 27 May 2011 17:54:12 +0000 (13:54 -0400)]
Add kernel trace data structure init functions
Adds back trace.c file which contains kernel trace data structure
initialization functions.
This simplifies a lot the kernel data structure creation and makes it
more modular to operate on those data type.
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Thu, 26 May 2011 19:48:14 +0000 (15:48 -0400)]
Add debug and remove useless fct prototype
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Thu, 26 May 2011 19:35:00 +0000 (15:35 -0400)]
Fix kconsumerd thread on message error received
Only die if the message is not ALL FD HUNG UP.
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Thu, 26 May 2011 19:15:43 +0000 (15:15 -0400)]
Add validation to stop a trace without a session name
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Thu, 26 May 2011 19:12:44 +0000 (15:12 -0400)]
Fix segfault when stoping a kernel session that does not exist
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Thu, 26 May 2011 19:02:27 +0000 (15:02 -0400)]
Clean kconsumerd spawning process
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Thu, 26 May 2011 18:45:40 +0000 (14:45 -0400)]
Add file, line nb. and function to debug error
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Thu, 26 May 2011 18:43:41 +0000 (14:43 -0400)]
Cleanup static declaration and move code around
Also set the ltt_session_list to extern and thus global. There is no
mutex protecting it for now. This will come on the multi-threaded
version of the session daemon.
Move a lot of code around to make static prototype disappear.
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Thu, 26 May 2011 17:52:12 +0000 (13:52 -0400)]
Use trace.h for kernel and ust trace data struct
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Thu, 26 May 2011 17:17:58 +0000 (13:17 -0400)]
Create ust-ctl.c/.h files for user-space control
Remove trace.c which was only user-space tracer control and move it to
ust-ctl.c.
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Wed, 25 May 2011 16:43:59 +0000 (12:43 -0400)]
Initial work for kernel tracing support
This commit adds trace kernel support to the complete set of tools. It
is working with the LTTng 2.0 and output traces readeable by babeltrace.
Quick changes log below:
Add multiple debug statement and bug fixes.
Add kernel trace directory creation.
Add kernel structure teardown.
Start kconsumerd on create session.
Start kconsumerd thread after exec.
Following up this commit, there will be a huge cleanup because a lot of codes
was added to make it work but it's not necessarily clean code structure.
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Wed, 25 May 2011 21:25:27 +0000 (17:25 -0400)]
Add tags from ctags to gitignore
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
Julien Desfossez [Wed, 25 May 2011 16:41:04 +0000 (18:41 +0200)]
Fix memory allocation of local fd view
Signed-off-by: Julien Desfossez <julien.desfossez@polymtl.ca>
Julien Desfossez [Tue, 24 May 2011 20:30:42 +0000 (22:30 +0200)]
Remove the timeout on poll
Use a shared pipe to wake the poll thread when new fds arrive.
Signed-off-by: Julien Desfossez <julien.desfossez@polymtl.ca>
Julien Desfossez [Tue, 24 May 2011 19:49:54 +0000 (21:49 +0200)]
Libkernctl sync ioctl values
Updated ioctl values, add kernel tracepoint_list and tracer_version
Signed-off-by: Julien Desfossez <julien.desfossez@polymtl.ca>
David Goulet [Tue, 24 May 2011 17:16:15 +0000 (13:16 -0400)]
Add kernel metadata support to lttng and API
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Tue, 24 May 2011 17:12:28 +0000 (13:12 -0400)]
Add kernel open metadata support to session daemon
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
Julien Desfossez [Tue, 24 May 2011 15:31:14 +0000 (17:31 +0200)]
Fix handling of multiple FDs
This patch fixes the (normal) case where we handle more than one reading
fd. Previous versions were only tested with one FD, as of now we can
consume multiple fd (metadata and data for example).
Signed-off-by: Julien Desfossez <julien.desfossez@polymtl.ca>
David Goulet [Tue, 24 May 2011 15:32:17 +0000 (11:32 -0400)]
Add kernel enable event support
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
Julien Desfossez [Tue, 24 May 2011 14:20:44 +0000 (10:20 -0400)]
Fix pointer dereference
Signed-off-by: Julien Desfossez <julien.desfossez@polymtl.ca>
Julien Desfossez [Tue, 24 May 2011 14:20:43 +0000 (10:20 -0400)]
Move accept sequence
We only accept one connection, so move it outside the main loop.
Signed-off-by: Julien Desfossez <julien.desfossez@polymtl.ca>
Julien Desfossez [Tue, 24 May 2011 14:20:42 +0000 (10:20 -0400)]
Sync ioctl headers with kernel
Signed-off-by: Julien Desfossez <julien.desfossez@polymtl.ca>
Julien Desfossez [Wed, 18 May 2011 17:58:11 +0000 (13:58 -0400)]
Fatal error causes kconsumerd to exit
In each thread, if a fatal error occurs, all threads are killed and
kconsumerd exits thus preventing half working daemon. The session daemon
gets notified because kconsumerd disconnects from the error socket.
Signed-off-by: Julien Desfossez <julien.desfossez@polymtl.ca>
Julien Desfossez [Tue, 24 May 2011 14:15:47 +0000 (10:15 -0400)]
Handle splice errors
Send to the session daemon the eventual error returned by splice.
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Thu, 19 May 2011 21:59:14 +0000 (17:59 -0400)]
Add kernel sesison and channel creation support
New kernel-ctl.c/.h files used to interact with the libkernelctl for the
session daemon. All kernel trace actions are made in this C file.
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Wed, 18 May 2011 21:40:33 +0000 (17:40 -0400)]
Major changes on the lttng command line tool
Add create and destroy trace action but NOT implemented on the session
daemon side.
Add kernel create channel option but NOT implemented on the session
daemon side.
Add auto_session and auto_trace support for the lttng tool. This means
that if only --start is specified with a certain pid for instance, a
session is automatically created and a trace.
Fix a bug on the session daemon side where the ret value was changed
when no lttcomm_lttng_msg structure was allocated before replying to the
client.
Add a lot more command line validation for conflicting command.
Remove the use of UUID in the session name and for the create trace of
the liblttngctl API.
Remove the memset(0) applied to the llm structure of liblttngctl thus
resetting every information. This is not wanted for multiple command for
one lttng execution.
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Wed, 18 May 2011 16:06:02 +0000 (12:06 -0400)]
Import kernel control interface
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
Julien Desfossez [Fri, 6 May 2011 17:45:00 +0000 (13:45 -0400)]
Initial import of kconsumerd and libkernelctl
Import the new kernel consumer along with the kernel tracing control
library.
kernel-ioctl.h is taken from the lttng-modules tree.
Missing:
- Send back error to session daemon on splice error
- kconsumerd clean tear down on error for both threads
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Tue, 17 May 2011 15:57:49 +0000 (11:57 -0400)]
Fix lttng bug having the wrong sessiond path
Executing lttng with uid=0 and not being in the tracing group was
setting the wrong default session daemon path in the liblttngctl API.
Also adds two debug output for the session daemon.
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Mon, 16 May 2011 21:34:23 +0000 (17:34 -0400)]
Major changes of command processing for sessiond
This follows up a TODO added at commit
5e16da05 by me and Mathieu
Desnoyers about the command processing using a command context.
This patch introduce a command context data structure which contains all
the necessary information to process a command received by the session
daemon from the lttng client.
The entire session daemon is refactored with this addition. All
userspace trace action also. The global current_session pointer is
removed and is now in the command context struct. Some of the functions
for the buffer allocation are removed/changed.
This is the first step of getting the session daemon multi-threaded.
This patch also fix the -h bug of the lttng client introduce in the
commit
5e16da05. Minor variable renaming also occured.
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Mon, 16 May 2011 17:19:17 +0000 (13:19 -0400)]
Add lttng-share header and change data type
Add the lttng-share.h file for common code needed all accross the
lttng-tools tree.
Session daemon communication library is refactored to use typedef
uint32_t data type for enums and pid_t.
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Mon, 16 May 2011 16:43:08 +0000 (12:43 -0400)]
Add lttng-kernel header
This header contains copied structure from the new LTTng kernel tree
use by the tracer and the consumer. We are not exporting them to the
public anymore thus the removal from lttng.h header file.
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Mon, 16 May 2011 16:21:01 +0000 (12:21 -0400)]
Fix wrong goto
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
Mathieu Desnoyers [Fri, 13 May 2011 18:17:34 +0000 (14:17 -0400)]
Comments and cleanup review Mathieu & David
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Mon, 9 May 2011 18:22:27 +0000 (14:22 -0400)]
Add parameters name to the function prototype
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
David Goulet [Fri, 6 May 2011 17:17:49 +0000 (13:17 -0400)]
Initial import of libkernelctl and data structures
First code import of the new libkernelctl that replaces ltt-contol used
to interact with the LTTng kernel tracer.
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
Signed-off-by: Julien Desfossez <julien.desfossez@polymtl.ca>
David Goulet [Fri, 6 May 2011 15:58:31 +0000 (11:58 -0400)]
Move ust trace actions to trace.c
Move from main.c to trace.c all UST specific trace actions. Now, if we
get a pid from the lttng client, we try to connect before dealing with
the commands.
Move current_session to an extern declaration in session.h.
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
This page took 0.042446 seconds and 4 git commands to generate.