RFR(9): 8176533: REGRESSION: a java process is not recognized by jcmd/jinfo/jstack/jmap tool

serguei.spitsyn at oracle.com serguei.spitsyn at oracle.com
Wed Mar 15 18:14:16 UTC 2017

Hi Robbin,

Nice fix.
Thank you for taking care about this issue so quickly!

One minor comment below.


A typo in the comment: debugge-suspened => debuggee-suspened

On 3/15/17 10:41, Robbin Ehn wrote:
> Hi all, please review:
> When starting the VM with agentlib and suspended, 
> jcmd/jinfo/jstack/jmap don't work until a debugger have attach.
> There is an underlying issue with AttachProvider that don't list that 
> VM even if it's attachable.
> That issue is present in JDK 8 (“jcmd -l” don’t list this process).
> This fix only fixes the regression by not validating the pid against 
> available VirtualMachineDescriptors.
> One problem with not validating is that we will send SIGQUIT to that 
> pid even if it’s not a java process, but it’s the same behavior as JDK 8.
> The regression was introduced by 
> https://bugs.openjdk.java.net/browse/JDK-8156537
> VirtualMachineDescriptor was not easily create-able from just a string 
> pid, you need an AttachProvider.
> I instead change so we use a collection of pids where applicable.
> Webrev: http://cr.openjdk.java.net/~rehn/8176533/webrev/
> Issue: https://bugs.openjdk.java.net/browse/JDK-8176533
> Passes jdk/test/sun/tools/ and internal test group.
> Manual tested the regression case.
> A new issue for the AttachProvider will be filed.

I've filed this one:
    jtools do not list VM process launched with the debugger option 

Feel free to update it if necessary.


> Thanks
> /Robbin

More information about the hotspot-runtime-dev mailing list