Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

(0.37) Invoke VirtualThread J9Hooks after releasing VirtualThread List Mutex #16857

Conversation

babsingh
Copy link
Contributor

@babsingh babsingh commented Mar 8, 2023

The VirtualThread J9Hooks trigger callbacks which can utilize JVMTI
RawMonitors. The usage of JVMTI RawMonitors can conflict with the
J9JavaVM->liveVirtualThreadListMutex and lead to deadlocks. So,
these J9Hooks should be invoked after the liveVirtualThreadListMutex
is released to avoid deadlocks.

Related: #16826

Backport of #16856

The VirtualThread J9Hooks trigger callbacks which can utilize JVMTI
RawMonitors. The usage of JVMTI RawMonitors can conflict with the
J9JavaVM->liveVirtualThreadListMutex and lead to deadlocks. So, these
J9Hooks should be invoked after the liveVirtualThreadListMutex is
released to avoid deadlocks.

Related: eclipse-openj9#16826

Signed-off-by: Babneet Singh <sbabneet@ca.ibm.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants