On Wed, 10 May 2023 23:41:07 GMT, Alex Menkov <amen...@openjdk.org> wrote:

>> The fix updates JVMTI FollowReferences implementation to report references 
>> from virtual threads:
>> - unmounted vthreads are detected, their stack references for 
>> JVMTI_HEAP_REFERENCE_STACK_LOCAL/JVMTI_HEAP_REFERENCE_JNI_LOCAL;
>> - stacks of mounted vthreads are splitted into 2 parts (virtual thread stack 
>> and carrier thread stack), references are reported with correct thread 
>> id/class tag/object tags/frame depth;
>> - common code to handle stack frames are moved into separate class;
>> 
>> Threads are reported as:
>> - platform threads: JVMTI_HEAP_REFERENCE_THREAD (as before);
>> - mounted vthreads (synthetic references, consider them as heap roots 
>> because carrier threads are roots): JVMTI_HEAP_REFERENCE_OTHER;
>> - unmounted vthreads: not reported as heap roots.
>
> Alex Menkov has updated the pull request incrementally with one additional 
> commit since the last revision:
> 
>   some refactoring
>   
>   added StackRefCollector::process_frames;
>   used single RegisterMap instance;
>   used RegisterMap::WalkContinuation::include for RegisterMap;

Thank you for the updates.
Looks good to me - approved.
Expecting some comment cleanup before integration.
Thanks,
Serguei

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

Marked as reviewed by sspitsyn (Reviewer).

PR Review: https://git.openjdk.org/jdk/pull/13254#pullrequestreview-1425207958

Reply via email to