Rev1 RFR (S): 8112746 Followup to JEP 245: Validate JVM Command-Line Flag Arguments (original) (raw)

Gerard Ziemski 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 currently implemented.

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.

cheers

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)

References: webrev:http://cr.openjdk.java.net/~gziemski/8112746rev1 this issue:https://bugs.openjdk.java.net/browse/JDK-8112746 JEP 245:https://bugs.openjdk.java.net/browse/JDK-8059557 hg stat: # hgstat src/share/vm/gc/g1/g1globals.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 mailing list