Rev1 RFR (S): 8112746 Followup to JEP 245: Validate JVM Command-Line Flag Arguments
gerard.ziemski at oracle.com
Fri Jun 26 16:16:40 UTC 2015
I will be updating up my webrev to Rev2 soon, that changes constraint
functions to take flags' arguments by value, not a pointer, as it is
I originally thought we could automatically adjust flag values as needed
when the range/constraint was invalidated, but that was deemed outside
the JEP-245, however, I forgot to fix constraint functions parameters.
On 6/25/2015 4:58 PM, Gerard Ziemski wrote:
> hi all,
> This webrev gets the macro and quotes fix right.
> Please review this followup to my recent JEP 245 checkin. It addresses
> the issues raised by Coleen, Dmitry and Kim during webrev.
> You can see https://bugs.openjdk.java.net/browse/JDK-8112746 for
> details, but the most important change here is that we only check
> constraint if the range check passes first.
> To quickly recap: I changed that part of the code when David pointed
> out that I had to modify 2 tests in a way that looked like a
> regression - I removed some test cases. However, Kim, later pointed
> out that the original code had the advantage of having constraints
> guaranteed that the flag values were within ranges.
> I checked in the code with ranges and constraints being checked both
> regardless of each other, but this followup restores the original
> behavior (and simplifies the code), where we first check ranges and
> only check constraints if range passes.
> The 2 tests (ObjectAlignment.java and Options.java) seem to loose some
> test cases, but those paths are still tested (though with different
> values), so we in fact do not loose anything from test coverage point
> of view.
> The change passes JPRT (hotspot) and RBT (vm.quick.testlist)
> this issue:https://bugs.openjdk.java.net/browse/JDK-8112746
> JEP 245:https://bugs.openjdk.java.net/browse/JDK-8059557
> hg stat:
> # hg_stat
> src/share/vm/gc/g1/g1_globals.hpp | 4 +-
> src/share/vm/runtime/commandLineFlagConstraintsGC.cpp | 5 +-
> src/share/vm/runtime/commandLineFlagRangeList.cpp | 58 ++++------
> src/share/vm/runtime/globals.cpp | 129
> src/share/vm/runtime/globals.hpp | 17 +--
> test/runtime/CompressedOops/ObjectAlignment.java | 3 +-
> test/runtime/contended/Options.java | 2 -
> 7 files changed, 103 insertions(+), 115 deletions(-)
More information about the hotspot-dev