-
Notifications
You must be signed in to change notification settings - Fork 232
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
8322511: [11u] JfrCheckpointThreadClosure::do_thread crashes when fetching thread_id #2413
Conversation
Hi @jia-wei-tang, welcome to this OpenJDK project and thanks for contributing! We do not recognize you as Contributor and need to ensure you have signed the Oracle Contributor Agreement (OCA). If you have not signed the OCA, please follow the instructions. Please fill in your GitHub username in the "Username" field of the application. Once you have signed the OCA, please let us know by writing If you already are an OpenJDK Author, Committer or Reviewer, please click here to open a new issue so that we can record that fact. Please use "Add GitHub user jia-wei-tang" as summary for the issue. If you are contributing this work on behalf of your employer and your employer has signed the OCA, please let us know by writing |
To avoid this situation, create a new branch for your changes and reset the
Then proceed to create a new pull request with |
/covered |
Thank you! Please allow for a few business days to verify that your employer has signed the OCA. Also, please note that pull requests that are pending an OCA check will not usually be evaluated, so your patience is appreciated! |
Hi, |
@GoeLin This is an error in 17,11 and 8.
|
/signed |
Thank you! Please allow for up to two weeks to process your OCA, although it is usually done within one to two business days. Also, please note that pull requests that are pending an OCA check will not usually be evaluated, so your patience is appreciated! |
Webrevs
|
@GoeLin Hi, I has not been an author so I cannot use |
@jia-wei-tang Please do not rebase or force-push to an active PR as it invalidates existing review comments. Note for future reference, the bots always squash all changes into a single commit automatically as part of the integration. See OpenJDK Developers’ Guide for more information. |
@jia-wei-tang Please do not rebase or force-push to an active PR as it invalidates existing review comments. Note for future reference, the bots always squash all changes into a single commit automatically as part of the integration. See OpenJDK Developers’ Guide for more information. |
@GoeLin Hi, I made some changes to fix this bug. Combine this PR and BackPort 8276125 can fix the JVM crash. Some details about how JVM visit the null object
However, between 3-4 steps, a JFR safepoint operation is executing. It traverses the ThreadList and attempts to read the id of each thread. The id is gotten by using |
@jia-wei-tang This pull request has been inactive for more than 4 weeks and will be automatically closed if another 4 weeks passes without any activity. To avoid this, simply add a new comment to the pull request. Feel free to ask for assistance if you need help with progressing this pull request towards integration! |
@phohensee @jerboaa Could you pls approve this JDK-8322511 and review my codes? I showed the details about how JVM visit the null object |
|
/approval request Fix JVM crash by adding a null condition check |
@jia-wei-tang |
The results of related JFR testcases are all successful. TEST TOTAL PASS FAIL ERROR |
@jia-wei-tang, can you please add [11u] to the PR title as I did for the JBS issue? Thanks! |
Please also enable GHA testing on your fork and trigger test runs! |
@GoeLin I changed the title of the pr and triggered GHA tests. May you approve JDK-8322511 ? Thanks a lot! |
@jia-wei-tang This change now passes all automated pre-integration checks. After integration, the commit message for the final commit will be:
You can use pull request commands such as /summary, /contributor and /issue to adjust it as needed. At the time when this comment was updated there had been 1 new commit pushed to the
Please see this link for an up-to-date comparison between the source branch of this pull request and the As you do not have Committer status in this project an existing Committer must agree to sponsor your change. Possible candidates are the reviewers of this PR (@phohensee) but any other Committer may sponsor as well. ➡️ To flag this PR as ready for integration with the above commit message, type |
/integrate |
@jia-wei-tang |
/sponsor |
Going to push as commit 29f300e.
Your commit was automatically rebased without conflicts. |
@phohensee @jia-wei-tang Pushed as commit 29f300e. 💡 You may see a message that your pull request was closed with unmerged commits. This can be safely ignored. |
Threads which are in the state of
is_attaching_via_jni
may have the NULL object as their_threadObj
.So the JVM will crash when calling
JfrCheckpointThreadClosure::do_thread()
.Progress
Issue
Reviewers
Reviewing
Using
git
Checkout this PR locally:
$ git fetch https://git.openjdk.org/jdk11u-dev.git pull/2413/head:pull/2413
$ git checkout pull/2413
Update a local copy of the PR:
$ git checkout pull/2413
$ git pull https://git.openjdk.org/jdk11u-dev.git pull/2413/head
Using Skara CLI tools
Checkout this PR locally:
$ git pr checkout 2413
View PR using the GUI difftool:
$ git pr show -t 2413
Using diff file
Download this PR as a diff file:
https://git.openjdk.org/jdk11u-dev/pull/2413.diff
Webrev
Link to Webrev Comment