Re: [lttng-dev] [PATCH lttng-ust] Fix: destructors do not run on probe provider dlclose

2018-02-22 Thread Mathieu Desnoyers
- On Feb 21, 2018, at 5:10 PM, Francis Deslauriers francis.deslauri...@efficios.com wrote: > Calling dlclose on a probe provider library does not unregister the > probes from the callsites as the destructors are not executed. please specify that this is only true for the first shared object

[lttng-dev] [RFC PATCH lttng-modules 2/2] Use the memory pool instead of kmalloc

2018-02-22 Thread Julien Desfossez
Replace the use of kmalloc/kfree in the tracepoint probes that need dynamic allocation with the tracepoint memory pool alloc/free. Signed-off-by: Julien Desfossez --- .../syscalls/headers/syscalls_pointers_override.h | 33 +- 1 file changed, 14

[lttng-dev] [RFC PATCH lttng-modules 1/2] Create a memory pool for temporary tracepoint probes storage

2018-02-22 Thread Julien Desfossez
This memory pool is created when the lttng-tracer module is loaded. It allocates 4 buffers of 4k on each CPU. These buffers are designed to allow tracepoint probes to temporarily store data that does not fit on the stack (during the code_pre and code_post phases). The memory is freed when the

[lttng-dev] [PATCH lttng-ust v2] Fix: destructors do not run on probe provider dlclose

2018-02-22 Thread Francis Deslauriers
Calling dlclose on the probe provider library that first loaded __tracepoints__disable_destructors in the symbol table does not unregister the probes from the callsites as the destructors are not executed. The __tracepoints__disable_destructors weak symbol is exposed by probe providers,