JDK-6995045 : assert(!gch->incremental_collection_failed()) failed: Error, defNewGeneration.cpp:827
  • Type: Bug
  • Component: hotspot
  • Sub-Component: gc
  • Affected Version: hs20
  • Priority: P3
  • Status: Resolved
  • Resolution: Fixed
  • OS: generic
  • CPU: generic
  • Submitted: 2010-10-26
  • Updated: 2011-01-28
  • Resolved: 2010-11-12
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 6 JDK 7 Other
6u25Fixed 7Fixed hs20Fixed
Related Reports
Relates :  
Relates :  
Description
A large number of nightly tests tripped a newly added assert.

;; Using jvm: "/export/local/common/jdk/baseline/solaris-sparc/jre/lib/sparc/server/libjvm.so"
#
# A fatal error has been detected by the Java Runtime Environment:
#
#  Internal Error (/tmp/jprt/P1/B/060939.ysr/source/src/share/vm/memory/defNewGeneration.cpp:827), pid=12211, tid=21
#  assert(!gch->incremental_collection_failed()) failed: Error
#
# JRE version: 7.0
# Java VM: OpenJDK Server VM (20.0-b01-201010240609.ysr.cms_bail-fastdebug mixed mode solaris-sparc )
# If you would like to submit a bug report, please visit:
#   http://java.sun.com/webapps/bugreport/crash.jsp
#

---------------  T H R E A D  ---------------

Current thread (0x003e9400):  VMThread [stack: 0xefd00000,0xefd80000] [id=21]

Stack: [0xefd00000,0xefd80000],  sp=0xefd7f6c8,  free space=509k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
V  [libjvm.so+0x1180fc4];;  void VMError::report_and_die()+0x768
V  [libjvm.so+0x6b5aa4];;  void report_vm_error(const char*,int,const char*,const char*)+0x74
V  [libjvm.so+0x6c608c];;  void DefNewGeneration::gc_epilogue(bool)+0xb0
V  [libjvm.so+0x7ca13c];;  void GenCollectedHeap::gc_epilogue(bool)+0xec
V  [libjvm.so+0x7c6d74];;  void GenCollectedHeap::do_collection(bool,bool,unsigned,bool,int)+0x1270
V  [libjvm.so+0x7c89d8];;  void GenCollectedHeap::do_full_collection(bool,int)+0xc0
V  [libjvm.so+0x1183024];;  void VM_GenCollectFull::doit()+0xf0
V  [libjvm.so+0x11b81f0];;  void VM_Operation::evaluate()+0x178
V  [libjvm.so+0x11b6538];;  void VMThread::loop()+0x668
V  [libjvm.so+0x11b5754];;  void VMThread::run()+0x10c
V  [libjvm.so+0xe349b4];;  java_start+0x2f0

VM_Operation (0xee67f104): GenCollectFull, mode: safepoint, requested by thread 0x004da000


---------------  P R O C E S S  ---------------

Java Threads: ( => current thread )
  0x004e0400 JavaThread "gc.lock.LockerTest$Worker@1e0bc08" [_thread_blocked, id=35, stack(0xee400000,0xee480000)]
  0x004df000 JavaThread "gc.lock.LockerTest$Worker@a20892" [_thread_blocked, id=34, stack(0xee500000,0xee580000)]
  0x004da000 JavaThread "Locker: nsk.share.gc.lock.CriticalSectionLocker$1@1fdc96c" daemon [_thread_blocked, id=33, stack(0xee600000,0xee680000)]
  0x0047e800 JavaThread "Locker: nsk.share.gc.lock.CriticalSectionLocker$1@578ceb" daemon [_thread_blocked, id=32, stack(0xee700000,0xee780000)]
  0x00415000 JavaThread "Low Memory Detector" daemon [_thread_blocked, id=30, stack(0xee900000,0xee980000)]
  0x00412000 JavaThread "C2 CompilerThread1" daemon [_thread_blocked, id=29, stack(0xeea00000,0xeea80000)]
  0x0040f800 JavaThread "C2 CompilerThread0" daemon [_thread_blocked, id=28, stack(0xeeb00000,0xeeb80000)]
  0x0040d800 JavaThread "Attach Listener" daemon [_thread_blocked, id=26, stack(0xeed00000,0xeed80000)]
  0x0040bc00 JavaThread "Signal Dispatcher" daemon [_thread_blocked, id=25, stack(0xeee00000,0xeee80000)]
  0x0040a000 JavaThread "Surrogate Locker Thread (Concurrent GC)" daemon [_thread_blocked, id=24, stack(0xeef00000,0xeef80000)]
  0x003f0400 JavaThread "Finalizer" daemon [_thread_blocked, id=23, stack(0xef480000,0xef500000)]
  0x003eb400 JavaThread "Reference Handler" daemon [_thread_blocked, id=22, stack(0xef580000,0xef600000)]
  0x0005c000 JavaThread "main" [_thread_blocked, id=2, stack(0xfd300000,0xfd380000)]

Other Threads:
=>0x003e9400 VMThread [stack: 0xefd00000,0xefd80000] [id=21]
  0x00418800 WatcherThread [stack: 0xee800000,0xee880000] [id=31]

VM state:at safepoint (normal execution)

VM Mutex/Monitor currently owned by a thread:  ([mutex/lock_event])
[0x0005aa90] Threads_lock - owner thread: 0x003e9400
[0x0005b1e0] Heap_lock - owner thread: 0x004da000

Heap
 par new generation   total 14784K, used 14346K [0xf0000000, 0xf1000000, 0xf1000000)
  eden space 13184K,  97% used [0xf0000000, 0xf0c7f940, 0xf0ce0000)
  from space 1600K,  96% used [0xf0e70000, 0xf0ff3270, 0xf1000000)
  to   space 1600K,  96% used [0xf0ce0000, 0xf0e62d40, 0xf0e70000)
 concurrent mark-sweep generation total 81688K, used 81118K [0xf1000000, 0xf5fc6000, 0xf6000000)
 concurrent-mark-sweep perm gen total 16384K, used 2200K [0xf6000000, 0xf7000000, 0xfa000000)

Dynamic libraries:
0x00010000 	/export/local/common/jdk/baseline/solaris-sparc/bin/java
0xff1e0000 	/lib/libthread.so.1
0xff1a0000 	/export/local/common/jdk/baseline/solaris-sparc/bin/../jre/lib/sparc/jli/libjli.so
0xff180000 	/lib/libdl.so.1
0xff000000 	/lib/libc.so.1
0xff1d0000 	/platform/SUNW,T5440/lib/libc_psr.so.1
0xfd400000 	/export/local/common/jdk/baseline/solaris-sparc/jre/lib/sparc/server/libjvm.so
0xff140000 	/lib/libsocket.so.1
0xff160000 	/usr/lib/libsched.so.1
0xfefd0000 	/lib/libm.so.1
0xfefa0000 	/usr/lib/libCrun.so.1
0xfef80000 	/lib/libdoor.so.1
0xfee80000 	/lib/libnsl.so.1
0xfed80000 	/lib/libm.so.2
0xfef50000 	/lib/libscf.so.1
0xfee60000 	/lib/libuutil.so.1
0xfed60000 	/lib/libgen.so.1
0xfed30000 	/lib/libmd.so.1
0xfed10000 	/platform/SUNW,T5440/lib/libmd_psr.so.1
0xfecf0000 	/lib/libmp.so.2
0xfec50000 	/export/local/common/jdk/baseline/solaris-sparc/jre/lib/sparc/libverify.so
0xfd3c0000 	/export/local/common/jdk/baseline/solaris-sparc/jre/lib/sparc/libjava.so
0xfec30000 	/export/local/common/jdk/baseline/solaris-sparc/jre/lib/sparc/native_threads/libhpi.so
0xfd2d0000 	/export/local/common/jdk/baseline/solaris-sparc/jre/lib/sparc/libzip.so
0xfd080000 	/export/local/common/testbase/6/vm/vm/bin/lib/solaris-sparc/nsk/share/gc/lock/jni/libStringCriticalLocker.so

VM Arguments:
jvm_args: -Xmixed -XX:-PrintVMOptions -Xconcgc -XX:+CMSClassUnloadingEnabled -XX:+StartAttachListener -XX:+IgnoreUnrecognizedVMOptions -XX:+UseCompressedOops -XX:-UseGCOverheadLimit 
java_command: gc.lock.LockerTest -gp1 randomString -lockers jni
Launcher Type: SUN_STANDARD

Environment Variables:
CLASSPATH=/export/local/39171.JDK7.NIGHTLY.VM+solaris-sparc_vm_server_mixed_vm.gc.testlist/results/ResultDir/jnilock001:/export/local/common/testbase/6/vm/vm/bin/classes:/export/local/common/jdk/baseline/solaris-sparc/lib/tools.jar
PATH=/export/local/common/jdk/baseline/solaris-sparc/bin:/bin:/usr/bin
LD_LIBRARY_PATH=/export/local/common/jdk/baseline/solaris-sparc/jre/lib/sparc/server:/export/local/common/testbase/6/vm/vm/bin/lib/solaris-sparc/nsk/share/gc/lock/jni:/export/local/common/testbase/6/vm/vm/bin/lib/solaris-sparc/nsk/share/gc/lock/malloc:/export/local/common/testbase/6/vm/vm/bin/lib/solaris-sparc/nsk/share/gc/lock/jvmti:/export/local/common/testbase/6/vm/vm/bin/lib/solaris-sparc/nsk/share/gc/lock/jniref
SHELL=/usr/bin/bash
DISPLAY=vm-v240-01.sfbay.sun.com:1

Signal Handlers:
SIGSEGV: [libjvm.so+0x1182330], sa_mask[0]=0xffbffeff, sa_flags=0x0000000c
SIGBUS: [libjvm.so+0x1182330], sa_mask[0]=0xffbffeff, sa_flags=0x0000000c
SIGFPE: [libjvm.so+0xe40380], sa_mask[0]=0xffbffeff, sa_flags=0x0000000c
SIGPIPE: [libjvm.so+0xe40380], sa_mask[0]=0xffbffeff, sa_flags=0x0000000c
SIGXFSZ: [libjvm.so+0xe40380], sa_mask[0]=0xffbffeff, sa_flags=0x0000000c
SIGILL: [libjvm.so+0xe40380], sa_mask[0]=0xffbffeff, sa_flags=0x0000000c
SIGUSR1: SIG_DFL, sa_mask[0]=0x00000000, sa_flags=0x00000000
SIGUSR2: SIG_DFL, sa_mask[0]=0x00000000, sa_flags=0x00000000
SIGQUIT: [libjvm.so+0xe399c8], sa_mask[0]=0xffbffeff, sa_flags=0x00000004
SIGHUP: [libjvm.so+0xe399c8], sa_mask[0]=0xffbffeff, sa_flags=0x00000004
SIGINT: [libjvm.so+0xe399c8], sa_mask[0]=0xffbffeff, sa_flags=0x00000004
SIGTERM: [libjvm.so+0xe399c8], sa_mask[0]=0xffbffeff, sa_flags=0x00000004
SIG39: [libjvm.so+0xe403a0], sa_mask[0]=0x00000000, sa_flags=0x00000008
SIG40: [libjvm.so+0xe40380], sa_mask[0]=0xffbffeff, sa_flags=0x0000000c


---------------  S Y S T E M  ---------------

OS:                      Solaris 10 10/09 s10s_u8wos_08a SPARC
           Copyright 2009 Sun Microsystems, Inc.  All Rights Reserved.
                        Use is subject to license terms.
                           Assembled 16 September 2009

uname:SunOS 5.10 Generic_142900-12 sun4v  (T2 libthread)
rlimit: STACK 10000k, CORE infinity, NOFILE 65536, AS infinity
load average:3.70 3.27 3.38

CPU:total 16 has_v8, has_v9, has_vis1, has_vis2, is_ultra3, is_sun4v, is_niagara1

Memory: 8k page, physical 16777216k(16446112k free)

vm_info: OpenJDK Server VM (20.0-b01-201010240609.ysr.cms_bail-fastdebug) for solaris-sparc JRE (1.7.0), built on Oct 23 2010 23:35:47 by "jprtadm" with Sun Studio 12u1

time: Tue Oct 26 08:14:53 2010
elapsed time: 5 seconds

# Host info: SunOS vm-t5440-01d 5.10 Generic_142900-12 sun4v sparc SUNW,T5440

Comments
EVALUATION http://hg.openjdk.java.net/jdk7/build/hotspot/rev/c766bae6c14d
04-12-2010

EVALUATION http://hg.openjdk.java.net/jdk7/hotspot-gc/hotspot/rev/c766bae6c14d
29-10-2010

SUGGESTED FIX http://hg.openjdk.java.net/jdk7/hotspot-gc/hotspot/rev/c766bae6c14d
27-10-2010

EVALUATION A too-strong assert, newly introduced in 6896603, which will need to be suitably repositioned. The assert, where currently positioned, is too strong in the case when we ask for an explicit gc from the gc locker and an incremental collection of the young generation fails due to a promotion failure.
27-10-2010

WORK AROUND A benign issue; the assert in question was much too strong. Not an issue for product builds. For debug builds, the following workaround is sufficient: -XX:SuppressErrorAt=<...> ... = defNewGeneration.cpp:827 or as appropriate.
27-10-2010