RFR: 8338383: Implement JEP 491: Synchronize Virtual Threads without Pinning [v12]
Patricio Chilano Mateo
pchilanomate at openjdk.org
Mon Oct 28 17:40:31 UTC 2024
On Sat, 26 Oct 2024 00:30:25 GMT, Dean Long <dlong at openjdk.org> wrote:
>> Patricio Chilano Mateo has updated the pull request incrementally with two additional commits since the last revision:
>>
>> - Restore use of atPointA in test StopThreadTest.java
>> - remove interruptible check from conditional in Object::wait
>
> src/hotspot/cpu/aarch64/continuationFreezeThaw_aarch64.inline.hpp line 338:
>
>> 336: // Make sure that extended_sp is kept relativized.
>> 337: DEBUG_ONLY(Method* m = hf.interpreter_frame_method();)
>> 338: DEBUG_ONLY(int extra_space = m->is_object_wait0() ? m->size_of_parameters() : 0;) // see comment in relativize_interpreted_frame_metadata()
>
> Isn't m->size_of_parameters() always correct? Why is wait0 a special case?
There are two cases where the interpreter native wrapper frame is freezed: synchronized native method, and `Object.wait()`. The extra push of the parameters to the stack is done after we synchronize on the method, so it only applies to `Object.wait()`.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/21565#discussion_r1819481705
More information about the nio-dev
mailing list