Fwd: Patch: Clean up fix for JDK-8047720

David Holmes david.holmes at oracle.com
Wed Feb 4 02:38:20 UTC 2015


On 4/02/2015 5:00 AM, Carsten Varming wrote:
> Greetings all,
>
> I was recently introduced to the deadlock described in JDK-8047720 and
> fixed in JDK9. The fix seems a little messy to me, and it looks like it
> left some very short races in the code. So I decided to clean up the
> code. See attached diff.
>
> The change takes a step back and acquires PeriodicTask_lock in
> WatcherThread::stop (like before the fix in JDK9), but this time
> safepoints are allowed to proceed when acquiring PeriodicTask_lock,
> preventing the deadlock.

It isn't obvious that blocking for a safepoint whilst in this method 
will always be a safe thing to do. That would need to be examined in 
detail - potential interactions can be very subtle.

David

> Let me know what you think,
> Carsten
>


More information about the serviceability-dev mailing list