RFR: Make Serviceability Agent attach functionality optional
Jini George
jini.george at oracle.com
Fri Apr 14 17:26:54 UTC 2017
Looks ok to me, a couple of nits though:
* in Lib-jdk.hotspot.agent.gmk, a space would be needed after the comma
at lines 60 and 102:
ifeq ($(INCLUDE_SA_ATTACH),true)
* In proc_service.h, we have the following lines:
76 // new libthread_db of NPTL seem to require this symbol
77 ps_err_e ps_get_thread_area();
So might make sense to have this too under #ifdef INCLUDE_SA_ATTACH
* Looks like the inclusion of thread_db.h and the corresponding
functions will have to be guarded with INCLUDE_SA_ATTACH in
libproc_impl.c too.
Thanks,
Jini.
On 4/14/2017 5:06 AM, Mikael Vidstedt wrote:
> Here’s an ugly incremental fix to get things building again:
>
> hotspot: http://cr.openjdk.java.net/~mikael/webrevs/portola/attachfix/webrev.00/hotspot/webrev/
>
> I’m going to file an enhancement to follow up on this to see if it can be cleaned up. Meanwhile, please have a look at the changes - both the ones I send out earlier, and the above fix.
>
> Cheers,
> Mikael
>
>> On Apr 13, 2017, at 3:31 PM, Mikael Vidstedt <mikael.vidstedt at oracle.com> wrote:
>>
>>
>> FYI: I messed up the details of the patch. Working on fixing it.
>>
>> Cheers,
>> Mikael
>>
>>> On Apr 13, 2017, at 9:19 AM, Mikael Vidstedt <mikael.vidstedt at oracle.com> wrote:
>>>
>>>
>>> The Serviceability Agent (aka. SA) has functionality to attach to running processes forcefully/without the cooperation of the VM, allowing “live” debugging even when the processes is stuck. On linux the implementation relies on the functionality provided by the thread_db.h header file.
>>>
>>> musl doesn’t support thread_db.h (or any other thread debugging library for that sake). This patch makes the inclusion of the attach/live debugging support optional, and only includes it if the thread_db.h header file is available.
>>>
>>> Note that the core debugging functionality still works without the attach/live debugging functionality in the SA (at least in theory, I haven’t taken core debugging for a spin yet).
>>>
>>> top: http://cr.openjdk.java.net/~mikael/webrevs/portola/sathreaddb/webrev.00/webrev/
>>> hotspot: http://cr.openjdk.java.net/~mikael/webrevs/portola/sathreaddb/webrev.00/hotspot/webrev/
>>>
>>> Cheers,
>>> Mikael
>>>
More information about the portola-dev
mailing list