RFR: 8191821: Finer granularity for GC verification

Poonam Parhar poonam.bajaj at oracle.com
Tue Nov 28 22:17:14 UTC 2017


Hello Stefan,

The changes look good! Thanks for implementing this enhancement.

One observation:
gcArguments.cpp: if we use VerifyGCType  with the collectors that 
currently don't support it, passing it multiple comma separated strings, 
then parse_verification_type() will print this warning message 
"VerifyGCType is not supported by this collector." for all the strings. 
It would be better to break out from the while loop in 
post_heap_initialize() if the collector does not support this option.

Thanks,
Poonam

On 11/28/2017 8:25 AM, Stefan Johansson wrote:
> Hi,
>
> Please review this change for enhancement:
> https://bugs.openjdk.java.net/browse/JDK-8191821
>
> Webrev:
> http://cr.openjdk.java.net/~sjohanss/8191821/00/
>
> Summary:
> Heap verification is a very good way to track down GC bugs, but it 
> comes with a lot of overhead. Using VerifyBeforeGC, VerifyDuringGC and 
> VerifyAfterGC often slows down the execution more than is needed since 
> we sometimes only want to verify certain types of GCs. This change 
> adds this feature for G1 by adding a new diagnostic flag VerifyGCType. 
> The new flag currently only works with G1 but can easily be added for 
> more GCs if needed. The type of the flag is ccstrlist which means the 
> option can be used multiple times to allow more than one type to be 
> verified. The types available for G1 is, young, mixed, remark, cleanup 
> and full. If the flag is not specified all GCs are verified.
>
> Note that Verify/Before/After/During/GC is still needed to decide what 
> to verify, VerifyGCType only describes when.
>
> Testing:
> * Added new Gtest for G1HeapVerifier functionality.
> * Added new Jtreg test for basic command line functionality.
> * Executed Jtreg tests through mach5 to make sure it passes on all 
> platforms.
>
> Thanks,
> Stefan

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mail.openjdk.org/pipermail/hotspot-gc-dev/attachments/20171128/1fd47040/attachment.htm>


More information about the hotspot-gc-dev mailing list