8009940: G1: assert(_finger == _heap_end) failed, concurrentMark.cpp:809
Summary: Skip reference processing if the global marking stack overflows during remark. Refactor and rename set_phase(); move code that sets the concurrency level into its own routine. Do not call set_phase() from within parallel reference processing; use the concurrency level routine instead. The marking state should only set reset by CMTask[0] during the concurrent phase of the marking cycle; if an overflow occurs at any stage during the remark, the marking state will be reset after reference processing.
Reviewed-by: brutisso, jmasa
README:
This file should be located at the top of the Mercurial repository.
See http://openjdk.java.net/ for more information about the OpenJDK.
See ../README-builds.html for complete details on build machine requirements.
Simple Build Instructions:
This repository can be loaded as a NetBeans project, built with ant, or
built with GNU make, e.g.
ant
-OR-
cd make && gnumake
The built files that will be imported into the jdk build will be in the
"dist" directory.
Help information is available by running "ant -projecthelp" or "make help".