All of lore.kernel.org
 help / color / mirror / Atom feed
* Re: [LTTng UST PATCH 0/2] Bug fixes for callsite unregistering
       [not found] <009B25148989C6458484484699278506E538AF34@EU-MBX-01.mgc.mentorg.com>
@ 2013-10-07 13:43 ` Mathieu Desnoyers
  0 siblings, 0 replies; 2+ messages in thread
From: Mathieu Desnoyers @ 2013-10-07 13:43 UTC (permalink / raw)
  To: JP Ikaheimonen; +Cc: lttng-dev

Both patches merged into master, stable-2.2, stable-2.3 (with slight changes). These become the following master commits:

commit 8a7ad54be134997ab5985968ac6ada9ea58cafb9
Author: Ikaheimonen, JP <jp_ikaheimonen@mentor.com>
Date:   Mon Oct 7 09:33:02 2013 -0400

    Add usage reference count for tracepoints
    
    Keep track of how many libraries use a tracepoint, and disable the
    tracepoint when the number of users drops to zero.
    
    A new reference counter is added to tracepoint_entry. This keeps track
    of how many callsites use that tracepoint.
    
    When you have libraries and/or executables sharing tracepoints, you
    cannot just disable your tracepoints when the library is unregistered.
    You must check that the tracepoint is not used by any other libraries
    before you disable it.
    
    Function lib_disable_tracepoints becomes unnecessary, and is removed.
    
    Signed-off-by: Ikaheimonen, JP <jp_ikaheimonen@mentor.com>
    Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>

commit 33f8ed8734a97e749206ec0e856ba2c28a56dcef
Author: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Date:   Mon Oct 7 09:30:52 2013 -0400

    tracepoint.c: Move add_callsite/remove_callsite further down in file
    
    In preparation for calling disable_tracepoint() from those functions.
    
    Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>

commit 60d8702955d702f95053b0355d156ae032ac2bc8
Author: Ikaheimonen, JP <jp_ikaheimonen@mentor.com>
Date:   Thu Oct 3 06:46:27 2013 +0000

    Store the callsites into the library callsite list
    
    Fix the issue where the callsites are registered but never
    properly unregistered.
    
    [ Edit by Mathieu Desnoyers: minor coding style fix: remove parenthesis. ]
    
    Signed-off-by: Ikaheimonen, JP <jp_ikaheimonen@mentor.com>
    Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>

Thanks a lot for those fixes!!

Mathieu

----- Original Message -----
> From: "JP Ikaheimonen" <jp_ikaheimonen@mentor.com>
> To: lttng-dev@lists.lttng.org
> Sent: Thursday, October 3, 2013 2:46:20 AM
> Subject: [lttng-dev] [LTTng UST PATCH 0/2] Bug fixes for callsite	unregistering
> 
> The following two patches fix one bug each in LTTng UST.
> 
> The first patch makes sure that when a library registers callsites, those
> callsites are also properly unregistered.
> It is only a matter of actually updating the list of callsites during
> registration.
> 
> The second patch deals with nested dynamic libraries. The current code
> disables tracepoints whenever a library destructor gets called.
> But if those tracepoints are also used by some other open library, then they
> stop working.
> The solution in the patch keeps track of how many callsites use a tracepoint,
> and disables the tracepoint only after the last library logs off.
> To work, the first patch must be applied first.
> 
> JP Ikaheimonen | SW Development Engineer
> http://go.mentor.com/sourceryanalyzer
> Mentor Embedded(tm) | Nucleus(r) | Linux(r) | Android(tm) | Services | UI |
> Multi-OS
> Android is a trademark of Google Inc. Use of this trademark is subject to
> Google Permissions.
> Linux is the registered trademark of Linus Torvalds in the U.S. and other
> countries.
> 
> 
> 
> _______________________________________________
> lttng-dev mailing list
> lttng-dev@lists.lttng.org
> http://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev
> 

-- 
Mathieu Desnoyers
EfficiOS Inc.
http://www.efficios.com

^ permalink raw reply	[flat|nested] 2+ messages in thread

* [LTTng UST PATCH 0/2] Bug fixes for callsite unregistering
@ 2013-10-03  6:46 Ikaheimonen, JP
  0 siblings, 0 replies; 2+ messages in thread
From: Ikaheimonen, JP @ 2013-10-03  6:46 UTC (permalink / raw)
  To: lttng-dev

The following two patches fix one bug each in LTTng UST.

The first patch makes sure that when a library registers callsites, those callsites are also properly unregistered.
It is only a matter of actually updating the list of callsites during registration.

The second patch deals with nested dynamic libraries. The current code disables tracepoints whenever a library destructor gets called.
But if those tracepoints are also used by some other open library, then they stop working.
The solution in the patch keeps track of how many callsites use a tracepoint, and disables the tracepoint only after the last library logs off.
To work, the first patch must be applied first.

JP Ikaheimonen | SW Development Engineer http://go.mentor.com/sourceryanalyzer
Mentor Embedded(tm) | Nucleus(r) | Linux(r) | Android(tm) | Services | UI | Multi-OS
Android is a trademark of Google Inc. Use of this trademark is subject to Google Permissions.
Linux is the registered trademark of Linus Torvalds in the U.S. and other countries.

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2013-10-07 13:43 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <009B25148989C6458484484699278506E538AF34@EU-MBX-01.mgc.mentorg.com>
2013-10-07 13:43 ` [LTTng UST PATCH 0/2] Bug fixes for callsite unregistering Mathieu Desnoyers
2013-10-03  6:46 Ikaheimonen, JP

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.