JDK-8011343 : Add new flag for verifying the heap during startup
  • Type: Enhancement
  • Component: hotspot
  • Sub-Component: gc
  • Affected Version: hs25
  • Priority: P4
  • Status: Resolved
  • Resolution: Fixed
  • Submitted: 2013-04-02
  • Updated: 2014-04-29
  • Resolved: 2013-04-06
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 7 JDK 8 Other
7u60Fixed 8Fixed hs25Fixed
Related Reports
Relates :  
Description
As part of the code review comments for 8010463, it was suggested that the following code:

  assert (Universe::is_fully_initialized(), "not initialized");
  if (VerifyBeforeGC && VerifyGCStartAt == 0) {
    Universe::heap()->prepare_for_verify();
    Universe::verify();   // make sure we're starting with a clean slate

that is executed during VM startup be changed so that the verification was done using a flag other than VerifyBeforeGC.

It was also suggested to use a VM_Operation to verify the heap at this point during startup since certain parts of the verification are skipped if executed outside of a safepoint.

This CR is to address those review comments.
Comments
Added new flag VerifyDuringInit (the polar opposite of the existing VerifyBeforeExit). There was an existing VM_Verify operation that was being unused - an instance of that operation is instantiated and executed during VM startup.
02-04-2013