RFR: 8291555: Implement alternative fast-locking scheme [v52]

David Holmes dholmes at openjdk.org
Tue Apr 4 22:15:41 UTC 2023


On Tue, 4 Apr 2023 19:04:03 GMT, Roman Kennke <rkennke at openjdk.org> wrote:

>>> Not at all clear to me how this fits here. ??
>> 
>> This block checks whether the monitor is in waiting state. When it is anonymously locked it must be waiting. I added a comment.
>
>> Given the owner could release the monitor the moment after we check I don't see how false results are an issue here. The existing code should be safe when not executed at a safepoint..
> 
> I checked again. It looks like the DeadLock test now passes even if I let the code in management.cpp go check stacks without safepoint. I believe the addition of the start_processing() to LockStack::contains() fixes the ZGC problem. But please, run the full tests again on Mach5. I don't see any failures here.

> When it is anonymously locked it must be waiting. 

I guess I am unclear what "waiting" refers to here, and which "thread" we are checking for what. If the monitor is anonymously locked then we know it is contended - perhaps that is what this "waiting" means?

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/10907#discussion_r1157819177


More information about the serviceability-dev mailing list