RFR: 8191821: Finer granularity for GC verification

Stefan Johansson stefan.johansson at oracle.com
Wed Nov 29 11:39:44 UTC 2017

Thanks for the review Poonam,

Update webrevs with your and Sangheons comments:
Inc: http://cr.openjdk.java.net/~sjohanss/8191821/00-01/
Full: http://cr.openjdk.java.net/~sjohanss/8191821/01/


On 2017-11-28 23:17, Poonam Parhar wrote:
> 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/20171129/497a950f/attachment.htm>

More information about the hotspot-gc-dev mailing list