RFR: 8178784: Revisit changes for making Serviceability Agent attach functionality optional
jini.george at oracle.com
Mon May 29 08:30:31 UTC 2017
Thanks much for the review, Mikael.
The modified webrev is at:
I have shifted the logic of reading in the /proc/<pid>/task/ entries to
read_thread_info in libproc_impl.c, and ps_core.c is more or less intact
except for the strerror_r related correction. I have removed the extra
spaces between the function name and the parenthesis also.
On 5/25/2017 11:57 PM, Mikael Vidstedt wrote:
> Thanks a lot for looking into this! The changes look good. One question:
> Would it be possible to implement the whole opendir/readdir/closedir walk as an alternative implementation of read_thread_info in libproc_impl.c instead? Without having tried it, I think that would mean you can revert the whole ps_core.c file back to what it was before I added the #include guards, and all the special logic will instead be in libproc_impl.c.
> Minor nit: there are a few places where you have a space between the function name and the parenthesis (after readdir for example), which doesn’t seem to be the style used in the rest of the places in the SA.
>> On May 25, 2017, at 5:26 AM, Jini George <jini.george at oracle.com> wrote:
>> Hi all,
>> Please review the changes for enabling live debugging (attaching to a process) with SA on Alpine Linux.
>> Webrev: http://cr.openjdk.java.net/~jgeorge/8178784/webrev.00/
>> Issue: https://bugs.openjdk.java.net/browse/JDK-8178784
>> The crux of the changes are:
>> 1. To include the functions #ifdef-ed out by INCLUDE_SA_ATTACH, and to correct build errors resulting due to the inclusion of these functions.
>> 2. SA on Linux uses the thread_db library for attach debugging. This library is not available on Alpine Linux. So instead of relying on thread_db, I have made changes to iterate over the list of tasks in the /proc/<pid>/task directory to find the list of threads to ptrace attach to. This enables the jhsdb commands like threads, jstack etc.
More information about the portola-dev