[10] RFR for JDK-8169961: Memory leak after debugging session
Poonam Parhar
poonam.bajaj at oracle.com
Mon Jul 17 13:37:43 UTC 2017
Hello Shafi,
A couple of comments:
Line 182: Here, eventController.release() is called after the 'vm' is disposed. And eventController.release() causes the following statement to be executed on the eventcontroller thread after the 'vm' is disposed:
JDWP.VirtualMachine.ReleaseEvents.process(vm);
Which does not seem to be right. Someone from the Serviceability group can confirm the correctness of this change.
Line 330: Instance variable 'VirtualMachineImpl vm' is removed from the EventController class. It is being used further down in its run() method. So I think it cannot be removed.
Thanks,
Poonam
> -----Original Message-----
> From: Shafi Ahmad
> Sent: Thursday, July 13, 2017 1:45 AM
> To: serviceability-dev at openjdk.java.net
> Cc: Poonam Parhar (poonam.bajaj at oracle.com)
> Subject: [10] RFR for JDK-8169961: Memory leak after debugging session
>
> Hi,
>
> Please review the code change for the fix of bug 'JDK-8169961: Memory
> leak after debugging session'
>
> Summary:
> 1. It seems that the thread created for
> com.sun.tools.jdi.TargetVM.EventController is never stopped and keeps a
> hard reference to the VirtualMachineImpl. This leads to
> VirtualMachineImpl leak after debug session is finished.
> EventController is private class and member field vm of type
> VirtualMachineImpl, holding the hard reference to the
> VirtualMachineImpl. I am not seeing the usage of filed vm so we can
> remove it safely.
> 2. Added eventController.release(); before 'Target VM interface thread
> exiting'
> 3. TargetVM gets an EventController which is a daemon thread, but
> don't see the thread having a way of stopping so added code to exit as
> soon as TargetVM thread stops listening.
>
> jdk10 bug: https://bugs.openjdk.java.net/browse/JDK-8169961
> webrev link: http://cr.openjdk.java.net/~shshahma/8169961/webrev.00/
>
> Testing: run jprt and I provided the FBP and it works for them.
>
> Regards,
> Shafi
More information about the serviceability-dev
mailing list