RFR 8130459(M): Add additional validation after heap creation
sangheon.kim
sangheon.kim at oracle.com
Wed Jul 15 07:33:36 UTC 2015
Hi all,
Please review this change of adding additional validation on
command-line flag checking framework.
Recently we introduced Command-line flag checking framework (JDK-8059557
<https://bugs.openjdk.java.net/browse/JDK-8059557>, JEP 245: Validate
JVM Command-Line Flag Arguments ) for ranges and constraints.
And most cases this works great.
Unfortunately there are some flags which can be checked after heap
creation and these flags are hard to be checked under current framework.
In this regard, I suggest to have an additional constraint checking.
This suggestion adds one more constraint checking stage after memory
initialization.
And if we need more validations we can extend it.
There are 2 big changes.
1. Flag declaration.
'constraint(FUNC)' -> 'constraint(FUNC,TYPE)'
This webrev has 3 types, Anytime, AfterParse and AfterMemoryInit.
- Anytime: current constraint functions which don't use
CommandLineFlags::finishedInitializing().
- AfterParse: constraint functions which use
CommandLineFlags::finishedInitializing().
- AfterMemoryInit: I added only YoungPLABSize as an example.
* All GC related flags will be covered by JDK-8078555
<https://bugs.openjdk.java.net/browse/JDK-8078555>: GC: implement ranges
(optionally constraints) for those flags that have them missing.
2. Previous constraint functions have to use
'CommandLineFlags::finishedInitializing()' if the flag needs to be
checked after Argument::parse().
However, with this suggestion there's no need to call the function.
Instead framework will decide when the constraint function is needed to
be called.
And previously constraint functions are called twice while this change
will call each constraint function only one time.
CR: https://bugs.openjdk.java.net/browse/JDK-8130459
webrev: http://cr.openjdk.java.net/~sangheki/8130459/webrev.00/
Testing: JPRT, UTE(vm.quick-pcl) and tests at test/runtime/CommandLine.
Thanks,
Sangheon
More information about the hotspot-dev
mailing list