8353815: [ubsan] compilationPolicy.cpp: division by zero related to tiered compilation flags #25902
+7
−5
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
A run of
runtime/CommandLine/OptionsValidation/TestOptionsWithRanges.java
with an ubsan enabled binary revealed that passing the value 0 toTier(3|4)LoadFeedback
, andTieredRateUpdateMinTime
lead to division by zero.Since
Tier(3|4)LoadFeedback
should disable the scaling of the compilation thresholds, 8bf37ee special cases the 0 case to disable scaling and documents it accordingly.4893b28 sets the lower limit for
TieredRateUpdate(Min|Max)Time
to 1 since the code assumes that at least 1ms passes between each event:jdk/src/hotspot/share/compiler/compilationPolicy.cpp
Lines 968 to 974 in c4fb00a
This PR was tested with:
Progress
Issue
Reviewers
Reviewing
Using
git
Checkout this PR locally:
$ git fetch https://git.openjdk.org/jdk.git pull/25902/head:pull/25902
$ git checkout pull/25902
Update a local copy of the PR:
$ git checkout pull/25902
$ git pull https://git.openjdk.org/jdk.git pull/25902/head
Using Skara CLI tools
Checkout this PR locally:
$ git pr checkout 25902
View PR using the GUI difftool:
$ git pr show -t 25902
Using diff file
Download this PR as a diff file:
https://git.openjdk.org/jdk/pull/25902.diff
Using Webrev
Link to Webrev Comment