RFR: 8253064: monitor list simplifications and getting rid of TSM [v4]
Coleen Phillimore
coleenp at openjdk.java.net
Tue Nov 10 22:25:04 UTC 2020
On Tue, 10 Nov 2020 21:12:25 GMT, Daniel D. Daugherty <dcubed at openjdk.org> wrote:
>> src/hotspot/share/runtime/monitorDeflationThread.cpp line 85:
>>
>>> 83: // visible to external suspension.
>>> 84:
>>> 85: ThreadBlockInVM tbivm(jt);
>>
>> Does this have to be a JavaThread? Could it be a non-java thread since deflating monitors doesn't have to call any Java code? You'd have to lock down the Monitor list maybe, but couldn't this be a NamedThread? This isn't a request to change it right now.
>
> Ummm... we use a JavaThread because we have to stop async deflation
> during safepoints so that we're not messing with Object headers during GC.
> Yes, it's possible to use a non-JavaThread because this is "just software",
> but I don't want to try to figure out those races...
Ok, I see why it has to be a JavaThread.
-------------
PR: https://git.openjdk.java.net/jdk/pull/642
More information about the serviceability-dev
mailing list