-
Notifications
You must be signed in to change notification settings - Fork 6.1k
8315061: Make LockingMode a product flag #15496
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
Conversation
/label add hotspot-runtime |
👋 Welcome back dcubed! A progress list of the required criteria for merging this PR into |
@dcubed-ojdk |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good and seems trivial.
@dcubed-ojdk This change now passes all automated pre-integration checks. ℹ️ This project also has non-automated pre-integration requirements. Please see the file CONTRIBUTING.md for details. 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 2 new commits pushed to the
Please see this link for an up-to-date comparison between the source branch of this pull request and the ➡️ To integrate this PR with the above commit message to the |
@calvinccheung - Thanks for the fast review. |
Verified with a local fastdebug build without enabling experimental options: $ build/macosx-x86_64-normal-server-fastdebug/images/jdk/bin/java -XX:LockingMode=2 -version $ build/macosx-x86_64-normal-server-fastdebug/images/jdk/bin/java -XX:LockingMode=3 -version |
/integrate |
Going to push as commit 3eac890.
Your commit was automatically rebased without conflicts. |
@dcubed-ojdk Pushed as commit 3eac890. 💡 You may see a message that your pull request was closed with unmerged commits. This can be safely ignored. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm sorry, I probably still don't understand. Shouldn't the flag be a diagnostic flag? The default value of the flag is what should be used, and the flag should only be changed if something doesn't work and when it is suspected that it's the locking implementation that's problematic.
Repeating my answer from the RFE: In order to change the default LockingMode value from LM_LEGACY to We can't change the default LockingMode value without making LockingMode |
Hmmm ok. It already has been a product flag, but it has been experimental. Requiring to unlock experimental or diagnostic options for customers to change the flag is not enough to change the default value, then? I was not aware of that... |
It was an "experimental" product flag and many customers won't use experimental I hope all this clarifies why I had to change LockingMode to a straight product flag. |
It can be confusing to refer to experimental and diagnostic flags as "product" flags, in the sense that they are not "develop" flags, but they are not a full-fledged "product flag" which is a non-develop flag that is neither experimental nor diagnostic. We refer to the latter simply as "product flags". By making this a product flag we also potentially increase the size of the user base that might be willing to test the new locking mode in their systems. We need to have some confidence that the new code has actually been used outside OpenJDK development and testing before making it the default for everyone. This change to full product flag is a necessary, but not in itself sufficient, step towards that. |
Ok, alright, thanks for the clarifications! |
A trivial fix to make LockingMode a product flag.
Progress
Issues
Reviewers
Reviewing
Using
git
Checkout this PR locally:
$ git fetch https://git.openjdk.org/jdk.git pull/15496/head:pull/15496
$ git checkout pull/15496
Update a local copy of the PR:
$ git checkout pull/15496
$ git pull https://git.openjdk.org/jdk.git pull/15496/head
Using Skara CLI tools
Checkout this PR locally:
$ git pr checkout 15496
View PR using the GUI difftool:
$ git pr show -t 15496
Using diff file
Download this PR as a diff file:
https://git.openjdk.org/jdk/pull/15496.diff
Webrev
Link to Webrev Comment