lttng-ust.git
12 years agoUse DBG instead of WARN for futex_wake workaround message
Mathieu Desnoyers [Wed, 14 Dec 2011 21:04:37 +0000 (16:04 -0500)] 
Use DBG instead of WARN for futex_wake workaround message

This message will only be shown if LTTNG_UST_DEBUG env. var. is set.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoMake dlopen more robust by using the .0 target for the library
Mathieu Desnoyers [Wed, 14 Dec 2011 16:10:31 +0000 (11:10 -0500)] 
Make dlopen more robust by using the .0 target for the library

We've experienced a double library load on a setup where the lttng-ust
.so and .so.0 were two physical files instead of a symlink (as they
should be). So let's make liblttng-ust slightly more robust by
specifying the target .so.0 instead of .so. It will also make handling
of library version upgrades easier.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoUpdate changelog v1.9.1
Mathieu Desnoyers [Tue, 13 Dec 2011 23:05:42 +0000 (18:05 -0500)] 
Update changelog

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoUpdate README
Mathieu Desnoyers [Tue, 13 Dec 2011 22:56:41 +0000 (17:56 -0500)] 
Update README

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoUpdate version to 1.9.1
Mathieu Desnoyers [Tue, 13 Dec 2011 22:51:58 +0000 (17:51 -0500)] 
Update version to 1.9.1

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoRename liblttng-ust-malloc to liblttng-ust-libc, update to lttng-ust 2.0
Mathieu Desnoyers [Tue, 13 Dec 2011 04:47:24 +0000 (23:47 -0500)] 
Rename liblttng-ust-malloc to liblttng-ust-libc, update to lttng-ust 2.0

- includes a fix to tracepoints to disable the tracepoint sites upon
  unregistration of the library. This is useful for cases where, like
  the libc wrapper, the library dependency for constructor/destructor
  is not quite right due to cross-dependencies (lttng-ust depends on
  malloc/free). This ensures the session teardown will never be in a
  position where it could teardown data structures still in use
  by probes that cannot be unregistered because their associated
  library would already have called its destructor.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoUpdate readme file, add example makefile
Mathieu Desnoyers [Tue, 13 Dec 2011 03:35:56 +0000 (22:35 -0500)] 
Update readme file, add example makefile

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoAdd missing compat.h file in Makefile.am
Mathieu Desnoyers [Mon, 12 Dec 2011 19:33:33 +0000 (14:33 -0500)] 
Add missing compat.h file in Makefile.am

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoRemove deprecated documentation files
Mathieu Desnoyers [Mon, 12 Dec 2011 19:31:17 +0000 (14:31 -0500)] 
Remove deprecated documentation files

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoRemove unused variable warning
Mathieu Desnoyers [Mon, 12 Dec 2011 19:30:59 +0000 (14:30 -0500)] 
Remove unused variable warning

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoFix unset metadata buffer self ref
Mathieu Desnoyers [Mon, 12 Dec 2011 18:56:44 +0000 (13:56 -0500)] 
Fix unset metadata buffer self ref

Caused the metadata flush to never be done.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoadd ustctl_release_handle
Mathieu Desnoyers [Sun, 11 Dec 2011 16:32:20 +0000 (11:32 -0500)] 
add ustctl_release_handle

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoPrint compiler warning/runtime warning and truncate too long tracepoint names
Mathieu Desnoyers [Sun, 11 Dec 2011 15:20:01 +0000 (10:20 -0500)] 
Print compiler warning/runtime warning and truncate too long tracepoint names

- also apply to loglevel names.
- -Wsystem-headers needs to be used to get gcc to show the
  warnings from system headers (which is the category in which the
  tracepoint event declaration headers falls into).

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoAdd sock flush buffer ctl API
Mathieu Desnoyers [Thu, 8 Dec 2011 21:37:03 +0000 (16:37 -0500)] 
Add sock flush buffer ctl API

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoAdd LTTNG_HOME_RUNDIR constant for local tracing
David Goulet [Thu, 8 Dec 2011 20:56:21 +0000 (15:56 -0500)] 
Add LTTNG_HOME_RUNDIR constant for local tracing

Adds the LTTNG_HOME_RUNDIR constant using ".lttng" as local directory
used for local sockets (when the session daemon is not running under
root privileges).

This is part of a change made to lttng-tools in order to support
unprivileged users to use the UST tracer.

Signed-off-by: David Goulet <david.goulet@polymtl.ca>
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoFix dynamic linking with GNU gold linker
Mathieu Desnoyers [Thu, 8 Dec 2011 13:28:42 +0000 (08:28 -0500)] 
Fix dynamic linking with GNU gold linker

Programs that were not linked explicitely with -lurcu-bp generated no
trace output when linked with GNU gold, because the urcu-bp library
symbols were not used to populate the weak urcu-bp symbols used by the
program. (even though they worked fine with the standard GNU ld).

Solve this by creating those wrapper symbols into tracepoint.c, and
explicitely get them with dlsym() in the constructor.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agowildcards & loglevels: fix list field for iteration
Mathieu Desnoyers [Thu, 8 Dec 2011 00:57:59 +0000 (19:57 -0500)] 
wildcards & loglevels: fix list field for iteration

Was causing segmentation fault on loglevel & wildcard disable operation.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoHandle _LGPL_SOURCE config
Mathieu Desnoyers [Wed, 7 Dec 2011 02:01:50 +0000 (21:01 -0500)] 
Handle _LGPL_SOURCE config

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoAdd wildcard support
Mathieu Desnoyers [Tue, 6 Dec 2011 19:58:27 +0000 (14:58 -0500)] 
Add wildcard support

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoFix loglevel value enable: use isdigit rather than isalpha
Mathieu Desnoyers [Tue, 6 Dec 2011 15:54:31 +0000 (10:54 -0500)] 
Fix loglevel value enable: use isdigit rather than isalpha

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoFix uninitialized match variable
Mathieu Desnoyers [Tue, 6 Dec 2011 15:50:34 +0000 (10:50 -0500)] 
Fix uninitialized match variable

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoSupport activation of loglevel by number
Mathieu Desnoyers [Tue, 6 Dec 2011 15:29:24 +0000 (10:29 -0500)] 
Support activation of loglevel by number

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agologlevel enable fix: enable event names, not loglevel
Mathieu Desnoyers [Tue, 6 Dec 2011 14:07:10 +0000 (09:07 -0500)] 
loglevel enable fix: enable event names, not loglevel

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoFix add_loglevel entry setup
Mathieu Desnoyers [Tue, 6 Dec 2011 04:59:57 +0000 (23:59 -0500)] 
Fix add_loglevel entry setup

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agologlevel enable fixes
Mathieu Desnoyers [Tue, 6 Dec 2011 04:53:34 +0000 (23:53 -0500)] 
loglevel enable fixes

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agologlevels: deal with fixup upon library load
Mathieu Desnoyers [Tue, 6 Dec 2011 00:54:48 +0000 (19:54 -0500)] 
loglevels: deal with fixup upon library load

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoAdd loglevel enable/disable support
Mathieu Desnoyers [Mon, 5 Dec 2011 23:45:04 +0000 (18:45 -0500)] 
Add loglevel enable/disable support

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoInclude lttng/tracepoint-types.h from tracepoint.h
Mathieu Desnoyers [Mon, 5 Dec 2011 20:51:32 +0000 (15:51 -0500)] 
Include lttng/tracepoint-types.h from tracepoint.h

Was wrong include path.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoFix BUG_ON handling
Mathieu Desnoyers [Mon, 5 Dec 2011 16:25:48 +0000 (11:25 -0500)] 
Fix BUG_ON handling

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoCleanup tracepoint.c
Mathieu Desnoyers [Sat, 3 Dec 2011 23:36:05 +0000 (18:36 -0500)] 
Cleanup tracepoint.c

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoIncrease tracepoint provider:name len limit to 255, add compile-time warning
Mathieu Desnoyers [Sat, 3 Dec 2011 22:50:23 +0000 (17:50 -0500)] 
Increase tracepoint provider:name len limit to 255, add compile-time warning

The compiler will now complain with a warning if a tracepoint
provider:name exceeds the 255 char limit (+ \0).

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoUse iterator on tracepoint probes instead of tracepoints per se
Mathieu Desnoyers [Sat, 3 Dec 2011 22:37:41 +0000 (17:37 -0500)] 
Use iterator on tracepoint probes instead of tracepoints per se

- Simplify iteration locking scheme by using a linked list to store all
  the tracepoints to be iterated on.
- Allow getting the loglevel in addition to the tracepoint name.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoCleanup the JNI interface options in configure.ac
Alexandre Montplaisir [Fri, 2 Dec 2011 02:22:19 +0000 (21:22 -0500)] 
Cleanup the JNI interface options in configure.ac

Fix typos, use macros and skip a redundant check.

Signed-off-by: Alexandre Montplaisir <alexandre.montplaisir@gmail.com>
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoAdd check for 'texinfo' to configure.ac
Alexandre Montplaisir [Fri, 2 Dec 2011 02:20:56 +0000 (21:20 -0500)] 
Add check for 'texinfo' to configure.ac

Fix for http://lttng.org/issue/252

Signed-off-by: Alexandre Montplaisir <alexandre.montplaisir@gmail.com>
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoUpdate .gitignore
Alexandre Montplaisir [Fri, 2 Dec 2011 02:20:00 +0000 (21:20 -0500)] 
Update .gitignore

Signed-off-by: Alexandre Montplaisir <alexandre.montplaisir@gmail.com>
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoRemove unused import for java tracing wrapper
Mathieu Desnoyers [Fri, 2 Dec 2011 02:18:50 +0000 (21:18 -0500)] 
Remove unused import for java tracing wrapper

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoAdd missing .class in ust java makefile
Mathieu Desnoyers [Fri, 2 Dec 2011 02:15:51 +0000 (21:15 -0500)] 
Add missing .class in ust java makefile

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoUpdate tracepoint used within lttng ust java
Mathieu Desnoyers [Fri, 2 Dec 2011 02:03:57 +0000 (21:03 -0500)] 
Update tracepoint used within lttng ust java

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agolttng_ust_java: add missing .h
Mathieu Desnoyers [Fri, 2 Dec 2011 01:59:03 +0000 (20:59 -0500)] 
lttng_ust_java: add missing .h

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoUpdate lttng-ust java provider following API change
Mathieu Desnoyers [Fri, 2 Dec 2011 01:55:07 +0000 (20:55 -0500)] 
Update lttng-ust java provider following API change

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoAdd TRACEPOINT_DEFINE to ust java lib
Mathieu Desnoyers [Fri, 2 Dec 2011 01:53:34 +0000 (20:53 -0500)] 
Add TRACEPOINT_DEFINE to ust java lib

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoDescribe autotools/libtool/automake version dependency
Mathieu Desnoyers [Thu, 1 Dec 2011 15:40:58 +0000 (10:40 -0500)] 
Describe autotools/libtool/automake version dependency

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoRemove m4_ifdef for AC_PROG_LIBTOOL (deprecated)
Mathieu Desnoyers [Thu, 1 Dec 2011 15:19:09 +0000 (10:19 -0500)] 
Remove m4_ifdef for AC_PROG_LIBTOOL (deprecated)

This trick does not seem to work anyway.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoUse unsigned int instead of int for bitfields
Mathieu Desnoyers [Thu, 1 Dec 2011 14:35:54 +0000 (09:35 -0500)] 
Use unsigned int instead of int for bitfields

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoChange API to support exporting loglevel in event listing
Mathieu Desnoyers [Wed, 30 Nov 2011 23:44:20 +0000 (18:44 -0500)] 
Change API to support exporting loglevel in event listing

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoRemove loglevel iter (will be performed by tracepoint iteration)
Mathieu Desnoyers [Wed, 30 Nov 2011 23:15:21 +0000 (18:15 -0500)] 
Remove loglevel iter (will be performed by tracepoint iteration)

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoTracepoint loglevel: setup all loglevel information at build time
Mathieu Desnoyers [Wed, 30 Nov 2011 22:55:25 +0000 (17:55 -0500)] 
Tracepoint loglevel: setup all loglevel information at build time

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoust-ctl API: ustctl_release_object() should return an error instead of assert
Mathieu Desnoyers [Wed, 30 Nov 2011 22:28:59 +0000 (17:28 -0500)] 
ust-ctl API: ustctl_release_object() should return an error instead of assert

Communication error can cause this function to fail, so an assert is
definitely not the right approach. Return error to caller.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoDivert installation of test plugins into /tmp/
Mathieu Desnoyers [Wed, 30 Nov 2011 15:41:36 +0000 (10:41 -0500)] 
Divert installation of test plugins into /tmp/

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoSupport older autotools
Mathieu Desnoyers [Wed, 30 Nov 2011 14:04:42 +0000 (09:04 -0500)] 
Support older autotools

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoRemove unneeded null pointer check
Mathieu Desnoyers [Wed, 30 Nov 2011 13:18:36 +0000 (08:18 -0500)] 
Remove unneeded null pointer check

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoFix demo program link dependencies
Mathieu Desnoyers [Tue, 29 Nov 2011 21:57:31 +0000 (16:57 -0500)] 
Fix demo program link dependencies

Only demo can afford not to link with liblttng-ust, not the providers.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoltt_event_create should return error values
Mathieu Desnoyers [Tue, 29 Nov 2011 21:39:58 +0000 (16:39 -0500)] 
ltt_event_create should return error values

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoApply autoupdate to configure.ac
Mathieu Desnoyers [Tue, 29 Nov 2011 20:29:48 +0000 (15:29 -0500)] 
Apply autoupdate to configure.ac

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agodemo program: only depend on libdl
Mathieu Desnoyers [Tue, 29 Nov 2011 13:08:55 +0000 (08:08 -0500)] 
demo program: only depend on libdl

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoTracepoint c++ support: cast void * to function pointer
Mathieu Desnoyers [Tue, 29 Nov 2011 13:01:50 +0000 (08:01 -0500)] 
Tracepoint c++ support: cast void * to function pointer

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
12 years agoIntroduce c++ test
Mathieu Desnoyers [Tue, 29 Nov 2011 12:47:48 +0000 (07:47 -0500)] 
Introduce c++ test

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoAdd new demo files
Mathieu Desnoyers [Sun, 27 Nov 2011 10:10:21 +0000 (10:10 +0000)] 
Add new demo files

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoAllow weak binding from instrumented apps to liblttng-ust
Mathieu Desnoyers [Sun, 27 Nov 2011 10:08:02 +0000 (10:08 +0000)] 
Allow weak binding from instrumented apps to liblttng-ust

This introduce the TRACEPOINT_DEFINE macro. See demo program for usage
example. This is an API change for instrumentation.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoUpdate tracepoint comments
Mathieu Desnoyers [Sat, 26 Nov 2011 06:59:20 +0000 (07:59 +0100)] 
Update tracepoint comments

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoRename TP_LOGLEVEL to tp_loglevel
Mathieu Desnoyers [Sat, 26 Nov 2011 01:57:56 +0000 (02:57 +0100)] 
Rename TP_LOGLEVEL to tp_loglevel

Within the loglevel enumeration, the entries are not separated by a
comma. To match the style used for TP_FIELDS() ctf_*() entries, use
lower-case, which denotes that these entries must not be separated by
commas.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoImplement tracepoint loglevel macros
Mathieu Desnoyers [Wed, 23 Nov 2011 13:37:14 +0000 (14:37 +0100)] 
Implement tracepoint loglevel macros

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoHandle sessiond application refusal with delayed retry
Mathieu Desnoyers [Sat, 19 Nov 2011 17:14:09 +0000 (12:14 -0500)] 
Handle sessiond application refusal with delayed retry

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoFix 32-bit compile type size warning
Mathieu Desnoyers [Sat, 19 Nov 2011 16:46:36 +0000 (11:46 -0500)] 
Fix 32-bit compile type size warning

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoSend bitness upon registration
Mathieu Desnoyers [Sat, 19 Nov 2011 16:42:42 +0000 (11:42 -0500)] 
Send bitness upon registration

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoUSt test: fix 32-bit type warning
Mathieu Desnoyers [Sat, 19 Nov 2011 16:12:23 +0000 (11:12 -0500)] 
USt test: fix 32-bit type warning

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoFix 32-bit type warning
Mathieu Desnoyers [Sat, 19 Nov 2011 16:10:53 +0000 (11:10 -0500)] 
Fix 32-bit type warning

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoAdd missing patient_write.c
Mathieu Desnoyers [Sat, 19 Nov 2011 16:08:56 +0000 (11:08 -0500)] 
Add missing patient_write.c

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoustctl: do not free object on release_object
Mathieu Desnoyers [Sat, 19 Nov 2011 14:39:42 +0000 (09:39 -0500)] 
ustctl: do not free object on release_object

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoDo not install share.h (cleanup)
Mathieu Desnoyers [Fri, 18 Nov 2011 19:07:18 +0000 (14:07 -0500)] 
Do not install share.h (cleanup)

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoDo not install usterr-signal-safe
Mathieu Desnoyers [Fri, 18 Nov 2011 19:04:08 +0000 (14:04 -0500)] 
Do not install usterr-signal-safe

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoRemove core.h
Mathieu Desnoyers [Fri, 18 Nov 2011 18:56:30 +0000 (13:56 -0500)] 
Remove core.h

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoExtend align.h
Mathieu Desnoyers [Fri, 18 Nov 2011 18:36:03 +0000 (13:36 -0500)] 
Extend align.h

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoImplement error.h
Mathieu Desnoyers [Fri, 18 Nov 2011 18:29:54 +0000 (13:29 -0500)] 
Implement error.h

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoRemove unused ARRAY_SIZE macro
Mathieu Desnoyers [Fri, 18 Nov 2011 18:20:13 +0000 (13:20 -0500)] 
Remove unused ARRAY_SIZE macro

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoImplement __rb_same_type
Mathieu Desnoyers [Fri, 18 Nov 2011 18:19:24 +0000 (13:19 -0500)] 
Implement __rb_same_type

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoImplement lttng_ust_get_cpu()
Mathieu Desnoyers [Fri, 18 Nov 2011 18:15:56 +0000 (13:15 -0500)] 
Implement lttng_ust_get_cpu()

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoCleanup: remove debug output
Mathieu Desnoyers [Fri, 18 Nov 2011 18:02:30 +0000 (13:02 -0500)] 
Cleanup: remove debug output

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoust-tracepoint-event: fix probe creation
Mathieu Desnoyers [Fri, 18 Nov 2011 18:01:16 +0000 (13:01 -0500)] 
ust-tracepoint-event: fix probe creation

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoCompile fix following moved headers
Mathieu Desnoyers [Fri, 18 Nov 2011 17:41:10 +0000 (12:41 -0500)] 
Compile fix following moved headers

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoImplement ust-tracepoint-events under MIT license
Mathieu Desnoyers [Fri, 18 Nov 2011 17:36:52 +0000 (12:36 -0500)] 
Implement ust-tracepoint-events under MIT license

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoImplement tracepoint event reset header
Mathieu Desnoyers [Fri, 18 Nov 2011 17:20:21 +0000 (12:20 -0500)] 
Implement tracepoint event reset header

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoFix tracepoint event related build errors
Mathieu Desnoyers [Fri, 18 Nov 2011 17:16:11 +0000 (12:16 -0500)] 
Fix tracepoint event related build errors

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoBasic tracepoint event implementation
Mathieu Desnoyers [Fri, 18 Nov 2011 17:05:43 +0000 (12:05 -0500)] 
Basic tracepoint event implementation

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoImplement jhash from public domain source, apply LGPL license
Mathieu Desnoyers [Fri, 18 Nov 2011 16:35:13 +0000 (11:35 -0500)] 
Implement jhash from public domain source, apply LGPL license

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoMore compile fixes
Mathieu Desnoyers [Thu, 17 Nov 2011 23:39:02 +0000 (18:39 -0500)] 
More compile fixes

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoFix lib ring buffer compile errors
Mathieu Desnoyers [Thu, 17 Nov 2011 21:45:13 +0000 (16:45 -0500)] 
Fix lib ring buffer compile errors

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoFix configure
Mathieu Desnoyers [Thu, 17 Nov 2011 21:39:56 +0000 (16:39 -0500)] 
Fix configure

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoAdd missing extern to tracepoint.h
Mathieu Desnoyers [Thu, 17 Nov 2011 20:34:22 +0000 (15:34 -0500)] 
Add missing extern to tracepoint.h

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoInstalled headers relicensing and cleanup
Mathieu Desnoyers [Thu, 17 Nov 2011 19:37:56 +0000 (14:37 -0500)] 
Installed headers relicensing and cleanup

- Move all locally-used code outside of include/lttng.
- All headers included in applications for tracing are relicensed
  to MIT license, except for lttng/core.h and
  lttng/usterr-signal-safe.h, which both purposefully only contain
  trivial declarations are static inline functions/macros of 10 lines or
  less. They are therefore OK to include into non-GPL applications
  without being considered as derivative work under the terms of the
  LGPLv2.1 license.
- Update version number support.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoclock.h: ensure all functions are trivial (10 lines or less)
Mathieu Desnoyers [Thu, 17 Nov 2011 18:38:56 +0000 (13:38 -0500)] 
clock.h: ensure all functions are trivial (10 lines or less)

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoRemove old marker header files
Mathieu Desnoyers [Thu, 17 Nov 2011 18:37:21 +0000 (13:37 -0500)] 
Remove old marker header files

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agousterr-signal-safe.h: ensure all macros are trivial (10 lines max)
Mathieu Desnoyers [Thu, 17 Nov 2011 18:36:00 +0000 (13:36 -0500)] 
usterr-signal-safe.h: ensure all macros are trivial (10 lines max)

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoImplement tracepoint-internal.h as LGPLv2.1 (not exported)
Mathieu Desnoyers [Thu, 17 Nov 2011 18:30:00 +0000 (13:30 -0500)] 
Implement tracepoint-internal.h as LGPLv2.1 (not exported)

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoRelicense tests probe headers/tp.c files to MIT-style license
Mathieu Desnoyers [Thu, 17 Nov 2011 17:11:53 +0000 (12:11 -0500)] 
Relicense tests probe headers/tp.c files to MIT-style license

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoRemove all LGPL-licensed headers
Mathieu Desnoyers [Thu, 17 Nov 2011 17:02:48 +0000 (12:02 -0500)] 
Remove all LGPL-licensed headers

Remove all headers licensed under LGPLv2.1 for upcoming reimplementation
under the BSD-style MIT license.

Even though technically most of the content of these headers fall under
the exceptions of the LGPL:

"When a "work that uses the Library" uses material from a header file
that is part of the Library, the object code for the work may be a
derivative work of the Library even though the source code is not.
Whether this is true is especially significant if the work can be
linked without the Library, or if the work is itself a library.  The
threshold for this to be true is not precisely defined by law.

  If such an object file uses only numerical parameters, data
structure layouts and accessors, and small macros and small inline
functions (ten lines or less in length), then the use of the object
file is unrestricted, regardless of whether it is legally a derivative
work.  (Executables containing this object code plus portions of the
Library will still fall under Section 6.)"

Our intent is to make sure applications can include these headers
without having to be considered derived code.

Therefore, the license of align.h, bug.h, ringbuffer-abi.h and
ringbuffer-config.h, ust-abi.h, ust-events.h, vatomic.h are changed to
MIT license (I, Mathieu Desnoyers, am the sole author of these files and
agree to these changes).

I am removing tracepoint-event.h, tracepoint-internal.h,
tracepoint-types.h, tracepoint.h, ust-tracepoint-event-reset.h and
ust-tracepoint-event.h because those might be considered derived work
from Ftrace.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoTracepoint: evaluate arguments within test block
Mathieu Desnoyers [Thu, 17 Nov 2011 15:52:50 +0000 (10:52 -0500)] 
Tracepoint: evaluate arguments within test block

> On Thu, 2011-11-17 at 04:55 +0100, Eric Dumazet wrote:
> > The general admitted claim of a tracepoint being on x86 a single
> > instruction :
> >
> > jmp +0
> >
> > Is not always true.
> >
> > For example in mm/slub.c, kmem_cache_alloc()
> >
> > void *ret = slab_alloc(s, gfpflags, NUMA_NO_NODE, _RET_IP_);
> > trace_kmem_cache_alloc(_RET_IP_, ret, s->objsize, s->size, gfpflags);
> > return ret;
> >
> > We can check compiler output and see that 4 extra instructions were
> > added because s->objsize & s->size are evaluated.
> >
> > I noticed this in a perf session, because these 4 extra instructions
> > added some noticeable latency/cost.
> >
> > c10e26a4:       8b 5d d8                mov    -0x28(%ebp),%ebx
> > c10e26a7:       85 db                   test   %ebx,%ebx
> > c10e26a9:       75 6d                   jne    c10e2718   (doing the memset())
> > c10e26ab:       8b 76 0c                mov    0xc(%esi),%esi   // extra 1
> > c10e26ae:       8b 5d 04                mov    0x4(%ebp),%ebx   // extra 2
> > c10e26b1:       89 75 f0                mov    %esi,-0x10(%ebp) // extra 3
> > c10e26b4:       89 5d ec                mov    %ebx,-0x14(%ebp) // extra 4
> > c10e26b7:       e9 00 00 00 00          jmp    c10e26bc
> > c10e26bc:       8b 45 d8                mov    -0x28(%ebp),%eax
> > c10e26bf:       83 c4 28                add    $0x28,%esp
> > c10e26c2:       5b                      pop    %ebx
> > c10e26c3:       5e                      pop    %esi
> > c10e26c4:       5f                      pop    %edi
> > c10e26c5:       c9                      leave
> >
> >
> > A fix would be to not declare an inline function but a macro...
> >
> > #define trace_kmem_cache_alloc(...) \
> >     if (static_branch(&__tracepoint_kmem_cache_alloc.key)) \
> >             __DO_TRACE(&__tracepoint_kmem_cache_alloc,      \
> >                     ...
> >
> > Anyone has some clever idea how to make this possible ?

Do this by moving the test into the tracepoint() macro.

Reported-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoRemove console output that should be turned into debug
Mathieu Desnoyers [Wed, 16 Nov 2011 03:25:25 +0000 (22:25 -0500)] 
Remove console output that should be turned into debug

But no debug log facility for this library which is included in
sessiond (yet).

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoDocument LGPL TRACEPOINT_CREATE_PROBES restrictions
Mathieu Desnoyers [Tue, 15 Nov 2011 22:03:15 +0000 (17:03 -0500)] 
Document LGPL TRACEPOINT_CREATE_PROBES restrictions

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agotracepoint: support TP_ARGS(void)
Mathieu Desnoyers [Tue, 15 Nov 2011 01:01:36 +0000 (20:01 -0500)] 
tracepoint: support TP_ARGS(void)

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
This page took 0.040102 seconds and 4 git commands to generate.