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-pre-components:
---------------------
Current pre-components are langtools, jaxws, jaxp, and corba.
Pre-components can use ant to build but must have a make/Makefile for
building (a GNU make Makefile).
All ant knowledge is being isolated in the workspaces that use it.
Also for various reasons it is nice to have a Makefile wrapper over the
running of ant, but in general having to do
anything with shell commands is much easier to do in a Makefile
than in an ant script.
The make/makefile rules are:
Variables:
ALT_BOOTDIR The jdk home to use to build, if provided
ALT_LANGTOOLS_DIST The dist area from a langtools build to use, if provided
ALT_OUTPUTDIR Parent dir of build and dist directories, if provided
VARIANT If DBG, debug build, if OPT, optimized build
TARGET_CLASS_VERSION The classfile version number (currently 7)
ANT_HOME Home of ant to use, if provided
QUIET If defined, be quiet
VERBOSE If defined, be verbose
JDK_VERSION Version being built
FULL_VERSION Full version string for this jdk build
MILESTONE fcs, beta, internal or empty
BUILD_NUMBER Number of the jdk build
JPRT_ARCHIVE_BUNDLE Path to zip bundle to create for JPRT
Targets:
all Build everything, including dist
build Build build area
clean Clean up
clobber Same as clean (don't ask)
sanity Perform any sanity checks, exit non-zero if errors
jprt_build_product JPRT product build, zip results into JPRT_ARCHIVE_BUNDLE
jprt_build_debug JPRT debug build, zip results into JPRT_ARCHIVE_BUNDLE
jprt_build_fastdebug JPRT fastdebug build, zip results into JPRT_ARCHIVE_BUNDLE
Then of course we expect a dist/lib/classes.jar, dist/lib/src.zip and dist/lib/bin.zip.