On Fri, 19 Dec 2025 11:43:41 GMT, Patricio Chilano Mateo
<[email protected]> wrote:
>> src/hotspot/share/runtime/suspendResumeManager.cpp line 70:
>>
>>> 68: // hang here. There is no way to time-out and abort the suspend
>>> request because
>>> 69: // the API does not allow for that - if a thread is live then it
>>> can be suspended.
>>> 70: if (target->in_critical_atomic()) {
>>
>> I think the target could also pick up this operation in the native->vm
>> transition in `ReleasexxxCritical` or even with nesting in `GetxxxCritical`,
>> so we should check target is not current thread.
>
> And if there is a safepoint in these transitions I realized we would deadlock
> because this thread will never be safepoint safe. So maybe better to move the
> spinning out as I suggested above?
Yeah I need to re-think this whole approach. What a mess. Thanks. :(
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/28884#discussion_r2635022382