[lttng-dev] [RFC PATCH 0/2] Identify UST threads by changing thread names

Jérémie Galarneau jeremie.galarneau at efficios.com
Fri Jun 3 06:11:10 UTC 2016


And, of course, I forget to add Mathieu in CC... Coffee time!

Jérémie

On Fri, Jun 3, 2016 at 2:10 AM, Jérémie Galarneau
<jeremie.galarneau at efficios.com> wrote:
> Hi Raphaël,
>
> Adding Mathieu in CC. Please make sure you CC the maintainers when
> submitting a patch.
>
> Regards,
> Jérémie
>
> On Wed, Jun 1, 2016 at 11:04 AM, Raphaël Beamonte
> <raphael.beamonte at gmail.com> wrote:
>> Hi,
>>
>> I did not get any feedback about this, any thoughts ?
>>
>> Thanks,
>> Raphaël
>>
>> 2016-04-21 16:50 GMT-04:00 Raphaël Beamonte <raphael.beamonte at gmail.com>:
>>> Hi,
>>>
>>> This is an RFC patch for comments and ideas about how this should be
>>> done. In recent work I've been doing, I found out that some UST-
>>> instrumented userspace process was preempting itself. Looking further,
>>> it was not the same TID, but the same process name. These processes
>>> were LTTng-UST listener threads, but were not identified as so.
>>> Adding a simple symbol, such as "-ust" or "-lttng" at the end of the
>>> process name would help to identify such process directly in the
>>> generated trace.
>>>
>>> You'll find below two different implementations with their pros
>>> and cons, for which the "-ust" symbol was choosen:
>>>
>>>
>>> 1/ An implementation using prctl
>>>         It works properly on Linux, but I didn't find a way to make
>>>         it work under FreeBSD, hence the empty function in FreeBSD
>>>         case (keeping the situation as it is now).
>>>
>>> Raphaël Beamonte (1):
>>>   Add -ust to the name of UST threads of the application
>>>
>>>  liblttng-ust/compat.h         | 22 ++++++++++++++++++++++
>>>  liblttng-ust/lttng-ust-comm.c |  2 ++
>>>  2 files changed, 24 insertions(+)
>>>
>>>
>>>
>>> 2/ An implementation using pthread
>>>         It works on both Linux and FreeBSD, but requires to add a
>>>         link to the pthread library in liblttng-ust Makefile.am.
>>>         Also, this approach relies on the presence of the
>>>         pthread_setname_np function, which was included in glibc
>>>         2.12, meaning it will not work with older versions (but
>>>         this should not be a problem?)
>>>
>>> Raphaël Beamonte (1):
>>>   Add -ust to the name of UST threads of the application
>>>
>>>  liblttng-ust/Makefile.am      |  1 +
>>>  liblttng-ust/compat.h         | 35 +++++++++++++++++++++++++++++++++++
>>>  liblttng-ust/lttng-ust-comm.c |  2 ++
>>>  3 files changed, 38 insertions(+)
>>>
>>>
>>>
>>> I'll wait for your comments and ideas on that subject.
>>>
>>> Thanks,
>>> Raphaël
>>>
>>>
>>> --
>>> 2.1.4
>>>
>> _______________________________________________
>> lttng-dev mailing list
>> lttng-dev at lists.lttng.org
>> https://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev
>
>
>
> --
> Jérémie Galarneau
> EfficiOS Inc.
> http://www.efficios.com



-- 
Jérémie Galarneau
EfficiOS Inc.
http://www.efficios.com


More information about the lttng-dev mailing list