RFR: 8315373: Change VirtualThread to unmount after freezing, re-mount before thawing [v3]
Alan Bateman
alanb at openjdk.org
Wed Sep 6 15:04:56 UTC 2023
> In the virtual thread implementation, thread identity switches to the carrier before freezing and switches back to the virtual thread after thawing. This was a forced move due to issues getting JVMTI to work with virtual threads. JVMTI can now hide events during transitions so we can invert the sequence back to mounting before running the continuation, unmounting after freezing, and re-mounting after thawing. This sequence is important for future changes that will initiate the freezing from the VM.
>
> The change requires an update to the JFR thread sampler to skip sampling when it samples during a transition.
>
> Testing: tier1-5
Alan Bateman has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains five additional commits since the last revision:
- Move transition check to JfrVframeStream ctor
- Merge
- Check for transition during stack walk for synchronous case
- Merge
- Initial commit
-------------
Changes:
- all: https://git.openjdk.org/jdk/pull/15492/files
- new: https://git.openjdk.org/jdk/pull/15492/files/18f63cbd..507ae919
Webrevs:
- full: https://webrevs.openjdk.org/?repo=jdk&pr=15492&range=02
- incr: https://webrevs.openjdk.org/?repo=jdk&pr=15492&range=01-02
Stats: 6688 lines in 179 files changed: 5237 ins; 969 del; 482 mod
Patch: https://git.openjdk.org/jdk/pull/15492.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/15492/head:pull/15492
PR: https://git.openjdk.org/jdk/pull/15492
More information about the serviceability-dev
mailing list