lttng-ust.git
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>
12 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>
12 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>
12 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>
12 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>
13 years agoFix multiple probe generation into one single C file
Mathieu Desnoyers [Tue, 15 Nov 2011 00:19:12 +0000 (19:19 -0500)] 
Fix multiple probe generation into one single C file

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoRemove run from makefile
Mathieu Desnoyers [Tue, 15 Nov 2011 00:18:07 +0000 (19:18 -0500)] 
Remove run from makefile

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoAdd demo program
Mathieu Desnoyers [Tue, 15 Nov 2011 00:06:17 +0000 (19:06 -0500)] 
Add demo program

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoAllow release object to have -1 sock param
Mathieu Desnoyers [Mon, 14 Nov 2011 04:08:06 +0000 (23:08 -0500)] 
Allow release object to have -1 sock param

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoinitiate lttng-ust-comm printout cleanup
Mathieu Desnoyers [Sun, 13 Nov 2011 22:26:07 +0000 (17:26 -0500)] 
initiate lttng-ust-comm printout cleanup

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoFix fork handling, where child shares shm with parent
Mathieu Desnoyers [Sun, 13 Nov 2011 22:16:20 +0000 (17:16 -0500)] 
Fix fork handling, where child shares shm with parent

Consider that consumer does most of the finalize/flush, so we don't need
to perform them in teardown.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoRemove unused libringbuffer/ring_buffer_abi.c
Mathieu Desnoyers [Sun, 13 Nov 2011 21:16:54 +0000 (16:16 -0500)] 
Remove unused libringbuffer/ring_buffer_abi.c

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoUpdate comment
Mathieu Desnoyers [Sun, 13 Nov 2011 19:29:13 +0000 (14:29 -0500)] 
Update comment

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoTracepoint API change: combine TP_PROTO and TP_VARS into TP_ARGS, remove _NOARGS...
Mathieu Desnoyers [Sun, 13 Nov 2011 19:07:57 +0000 (14:07 -0500)] 
Tracepoint API change: combine TP_PROTO and TP_VARS into TP_ARGS, remove _NOARGS macros

New API for tracepoints, combining the TP_PROTO and TP_VARS arguments
into a single "TP_ARGS" macro. It takes up to 10 parameters (from 0 to
10). The "_NOARGS" special-case is not needed anymore: it can be
achieved simply by passing an empty TP_ARGS:

  TP_ARGS(),

to the standard tracepoint event declarations.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoTracepoints: add provider mismatch check
Mathieu Desnoyers [Fri, 11 Nov 2011 17:46:23 +0000 (12:46 -0500)] 
Tracepoints: add provider mismatch check

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoTracepoint API change: rename TRACEPOINT_SYSTEM to TRACEPOINT_PROVIDER
Mathieu Desnoyers [Fri, 11 Nov 2011 17:31:35 +0000 (12:31 -0500)] 
Tracepoint API change: rename TRACEPOINT_SYSTEM to TRACEPOINT_PROVIDER

Eliminates the confusion between the first TRACEPOINT_EVENT "provider"
argument and the "TRACEPOINT_SYSTEM", which need to be the same thing.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoMerge branch 'master' of git.lttng.org:/home/git/lttng-ust
Mathieu Desnoyers [Fri, 11 Nov 2011 17:28:46 +0000 (12:28 -0500)] 
Merge branch 'master' of git.lttng.org:/home/git/lttng-ust

13 years agotracepoint API change: rename TP_ARGS to TP_VARS
Mathieu Desnoyers [Fri, 11 Nov 2011 17:22:41 +0000 (12:22 -0500)] 
tracepoint API change: rename TP_ARGS to TP_VARS

In preparation of folding of both TP_PROTO and TP_ARGS into TP_ARGS.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agolttng-ust-comm: relicense to LGPLv2.1
Mathieu Desnoyers [Fri, 11 Nov 2011 16:10:16 +0000 (11:10 -0500)] 
lttng-ust-comm: relicense to LGPLv2.1

This internal communication library is used by both lttng-sessiond and
lttng-ust. lttng-ust is LGPLv2.1, so we need to make this library
LGPLv2.1 to ensure licensing is respected.

However, we now keep this library internal to liblttng-ust and
liblttng-ust-ctl. It is not installed into the system anymore. Only the
lttng-sessiond (or another GPLv2-compatible session daemon) is meant to
control liblttng-ust through the GPLv2 liblttng-ust-ctl control library.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Signed-off-by: David Goulet <david.goulet@polymtl.ca>
Signed-off-by: Julien Desfossez <julien.desfossez@polymtl.ca>
13 years agoDo not install liblttng-ust-comm and ust-comm.h
Mathieu Desnoyers [Fri, 11 Nov 2011 16:04:54 +0000 (11:04 -0500)] 
Do not install liblttng-ust-comm and ust-comm.h

Only used internally by liblttng-ust-ctl and liblttng-ust.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoFix metadata tp listing filtering
Mathieu Desnoyers [Thu, 10 Nov 2011 20:20:03 +0000 (15:20 -0500)] 
Fix metadata tp listing filtering

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoDon't list metadata tracepoint
Mathieu Desnoyers [Thu, 10 Nov 2011 20:03:01 +0000 (15:03 -0500)] 
Don't list metadata tracepoint

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoAdd delay parameter to hello test program
Mathieu Desnoyers [Thu, 10 Nov 2011 18:17:16 +0000 (13:17 -0500)] 
Add delay parameter to hello test program

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoDefine ltt_transport_list as static
Mathieu Desnoyers [Thu, 10 Nov 2011 17:40:05 +0000 (12:40 -0500)] 
Define ltt_transport_list as static

Fix uninitialized state at constructor execution.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoClean unused vars. warnings
Mathieu Desnoyers [Thu, 10 Nov 2011 17:15:09 +0000 (12:15 -0500)] 
Clean unused vars. warnings

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoAdd missing core.c file
Mathieu Desnoyers [Wed, 9 Nov 2011 15:29:00 +0000 (10:29 -0500)] 
Add missing core.c file

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoImplement ustctl_tracepoint_list/list_get
Mathieu Desnoyers [Wed, 9 Nov 2011 15:25:31 +0000 (10:25 -0500)] 
Implement ustctl_tracepoint_list/list_get

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoImplement LTTNG_UST_TRACEPOINT_LIST
Mathieu Desnoyers [Wed, 9 Nov 2011 14:55:49 +0000 (09:55 -0500)] 
Implement LTTNG_UST_TRACEPOINT_LIST

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
13 years agoupdate char limit comment in tracepoint
Mathieu Desnoyers [Tue, 8 Nov 2011 20:48:31 +0000 (15:48 -0500)] 
update char limit comment in tracepoint

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