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
8312585: Rename DisableTHPStackMitigation flag to THPStackMitigation #14992
8312585: Rename DisableTHPStackMitigation flag to THPStackMitigation #14992
Conversation
👋 Welcome back shade! A progress list of the required criteria for merging this PR into |
Webrevs
|
FYI @tstuefe. |
I disagree. This name is exactly what is intended - we disable a mitigation/workaround. It's name is consistent with previous flags of this kind DisableXXXWorkAround IIRC. |
I also don't see a "double negation" here - naming a flag DisableX is not in itself double-negation. |
I also like the flag as it is. If "mitigation" bothers you, you could name it "DisableTHPStackFix" or similar". |
It was confusing at least for me, because I had to pause and think what exactly In my opinion, |
Okay, sounds reasonable too. If you can convince David, I'm fine with either outcome. I know, not very helpful :-) |
I understand how you see it this way but that is, I presume, because you read the +/- as enable/disable. But To me the use of Enable/Disable can convey additional information about the nature of the flag - if the flag is DisableX then I would expect X to normally be enabled but in some rare cases we may need to disable it, hence the flag conveys that. And yes you can abuse that by having the flag and the default value of the flag the wrong way around - such is life. To me if the flag is just X then it suggests, albeit there must be a default for X, that there is some ambivalence about whether X should be enabled or not - "hey X is enabled by default, but if you want to turn it off that's fine, your call." I fully understand both points of view here, but there is plenty of precedence for using Use/Enable/Disable prefixes on flags. And Use in particular is far too entrenched to be displaced. |
FWIW, I agree with Aleksey and I don't think we should be adding flags prefixed with Disable. |
Note that the original name was already discussed a lot and went through several changes. I am fine with whatever variant we come up (all alternatives sound sensible to me), but it would be good if we resolved that soon before starting to backport JDK-8312182. |
The current positions seem to be: strong "rename, dropping Disable" from me; "rename from Disable" from Stefan; "keep it" from David; "abstain" from Thomas. So while this technically leans toward renaming, I don't think this overrides David's objection to the change. So unless somebody else puts in a strong position "for" or "against", or current folks change their positions, we are in a bind. |
We've had some internal discussion and the general position is "no negative naming" and a preference I believe for "Use" as a prefix if a prefix is needed/desired. There will probably be a style-guide update proposed for the general case. So my objection is overridden and so withdrawn. :) |
@shipilev 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 |
Thank you for initiating the discussion, and triggering the future style guide change. It was a long time coming :) I am going to re-test this thing, while waiting for more approvals. |
Can't take the credit, that was @stefank . |
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.
Good.
Thanks to @dholmes-ora for resolving the discussions, I'm happy we agree.
RISC-V GHA failure is the infrastructural one, to be fixed with another PR. /integrate |
Going to push as commit 226cdc6.
Your commit was automatically rebased without conflicts. |
The flag newly added by JDK-8312182 is prompting the use of
-XX:+DisableTHPStackMitigation
to disable the THP stack mitigation, thus allowing THP in thread stacks. This double negation does not read well, and not in line with other mitigation flags likeIntelJccErratumMitigation
.It would be better to rename the flag to avoid double-negation, before it proliferates to other JDK releases.
(I would have the same comment during the original review, but missed it :P)
Additional testing:
Progress
Issue
Reviewers
Reviewing
Using
git
Checkout this PR locally:
$ git fetch https://git.openjdk.org/jdk.git pull/14992/head:pull/14992
$ git checkout pull/14992
Update a local copy of the PR:
$ git checkout pull/14992
$ git pull https://git.openjdk.org/jdk.git pull/14992/head
Using Skara CLI tools
Checkout this PR locally:
$ git pr checkout 14992
View PR using the GUI difftool:
$ git pr show -t 14992
Using diff file
Download this PR as a diff file:
https://git.openjdk.org/jdk/pull/14992.diff
Webrev
Link to Webrev Comment