JDK-7033136 : G1: SIGSEGV in CMTask::drain_local_queue
  • Type: Bug
  • Component: hotspot
  • Sub-Component: gc
  • Affected Version: hs21
  • Priority: P3
  • Status: Closed
  • Resolution: Duplicate
  • OS: generic
  • CPU: generic
  • Submitted: 2011-04-01
  • Updated: 2013-09-18
  • Resolved: 2011-04-04
Related Reports
Duplicate :  
Description
Application crashes with SIGSEGV (JDK 7 b136, HS 21 b06, solaris-sparc, -client, -XX:+UnlockExperimentalVMOptions -XX:+UseG1GC -XX:+UseCodeCacheFlushing -Djava.net.preferIPv4Stack=true -Xmx1273856K)

# A fatal error has been detected by the Java Runtime Environment:
#
#  SIGSEGV (0xb) at pc=0xfead6e8c, pid=13710, tid=23
#
# JRE version: 7.0-b136
# Java VM: Java HotSpot(TM) Client VM (21.0-b06 mixed mode solaris-sparc )
# Problematic frame:
# V  [libjvm.so+0x2d6e8c]  void CMTask::drain_local_queue(bool)+0x194

Current thread (0x011be400):  ConcurrentGCThread [stack: 0x00000000,0x00000000] [id=23]

Stack: [0x00000000,0x00000000],  sp=0xfad7f9d8,  free space=4109822k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
V  [libjvm.so+0x2d6e8c]  void CMTask::drain_local_queue(bool)+0x194;;  void CMTask::drain_local_queue(bool)+0x194
V  [libjvm.so+0x2d9bac]  bool CMBitMapClosure::do_bit(unsigned)+0x244;;  bool CMBitMapClosure::do_bit(unsigned)+0x244
V  [libjvm.so+0x1d7ff4]  bool BitMap::iterate(BitMapClosure*,unsigned,unsigned)+0x84;;  bool BitMap::iterate(BitMapClosure*,unsigned,unsigned)+0x84
V  [libjvm.so+0x2d7c94]  void CMTask::do_marking_step(double,bool,bool)+0x244;;  void CMTask::do_marking_step(double,bool,bool)+0x244
V  [libjvm.so+0x2d9380]  void CMConcurrentMarkingTask::work(int)+0x290;;  void CMConcurrentMarkingTask::work(int)+0x290
V  [libjvm.so+0x64fa7c]  void GangWorker::loop()+0x80;;  void GangWorker::loop()+0x80
V  [libjvm.so+0x546418]  java_start+0x26c;;  java_start+0x26c
The Kitchensink test case ran on the SQE machine ran successfully with a JVM that includes the fix for 7009266 over the weekend. The same test (program and flags) also ran successfully with the workaround (that was included in hs20 b10) that effectively disables reference discovery (and therefore reference processing) during marking.

I think I shall bring workaround for 7009266 into hs21; make this CR a duplicate of 7009266. I will also add to the changes for 7009266 to re-enable the reference discovery (by changing the value of the flag in the workaround).

Comments
EVALUATION Test case ran successfully over the weekend with a JVM that includes a fix for 7009266 as well as a JVM that includes the workaround that went into hs20 b10. Marking this as a duplicate of 7009266.
04-04-2011