JDK-6614036 : REGRESSION: Java server x86 VM intermittently crash with SIGSEGV (0xb)
  • Type: Bug
  • Component: hotspot
  • Sub-Component: compiler
  • Affected Version: 6u4
  • Priority: P1
  • Status: Resolved
  • Resolution: Fixed
  • OS: generic
  • CPU: generic
  • Submitted: 2007-10-08
  • Updated: 2010-05-10
  • Resolved: 2008-04-18
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
6u4Fixed 7Fixed hs10Fixed
Related Reports
Relates :  
Relates :  
Description
Java server x86 sparc VM intermittently crash with SIGSEGV (0xb) while executing nsk/regression/b4296365 test. The test do not fail with jdk 6u2 fcs.

# An unexpected error has been detected by Java Runtime Environment:
#
#  SIGSEGV (0xb) at pc=0xd109a217, pid=11288, tid=14
#
# Java VM: Java HotSpot(TM) Server VM (10.0-b17 mixed mode solaris-x86)
# Problematic frame:
# V  [libjvm.so+0x49a217]
#
# If you would like to submit a bug report, please visit:
#   http://java.sun.com/webapps/bugreport/crash.jsp
#

= How to reproduce 

1. logon to ex-vice.russia or or any other solaris x86 machine

login details in comments

2. cd /net/vice.russia/export/home0/results/6u4/b04/vm/vm/solaris-i586/server/mixed/vm-vm_6-ur_server_mixed_solaris-i5862007-10-05-22-55-30/ResultDir/b4296365

3. /net/vmsqe.russia/export/bin/reproduce_bug.sh rerun.sh

The test fail in 1 of 10 test runs.

4. you can use:

/net/vmsqe.russia/export/bin/reproduce_bug.sh rerun-u2.sh to check with u2 that test pass

= Test log file

[2007-10-06T00:49:58.15] export SHELL
[2007-10-06T00:49:58.15] export DISPLAY
[2007-10-06T00:49:58.15] export LIBJSIG_PATH
[2007-10-06T00:49:58.15] export SystemRoot
[2007-10-06T00:49:58.15] export TESTBASE
[2007-10-06T00:49:58.15] export RAS_OPTIONS
[2007-10-06T00:49:58.15] export HOME
[2007-10-06T00:49:58.15] export ROOTDIR
[2007-10-06T00:49:58.15] export LD_LIBRARY_PATH
[2007-10-06T00:49:58.15] export CLASSPATH
[2007-10-06T00:49:58.15] export TEMP
[2007-10-06T00:49:58.15] export WINDIR
[2007-10-06T00:49:58.15] export PATH
[2007-10-06T00:49:58.15] TEST_DEST_DIR="b4296365"
[2007-10-06T00:50:02.69] # Actual: TEST_DEST_DIR=b4296365
[2007-10-06T00:50:02.69] TESTNAME="${test_case_name}"
[2007-10-06T00:50:02.69] # Actual: TESTNAME=b4296365
[2007-10-06T00:50:02.69] testName="nsk/regression//b4296365"
[2007-10-06T00:50:02.69] # Actual: testName=nsk/regression//b4296365
[2007-10-06T00:50:02.69] TESTDIR="${test_work_dir}"
[2007-10-06T00:50:02.69] # Actual: TESTDIR=/export/local/5422.JDK6_UR.PROMOTION.VM+vm_6-ur_server_mixed_solaris-i586_115718536A0/results/ResultDir/b4296365
[2007-10-06T00:50:02.69] testWorkDir="${test_work_dir}/"
[2007-10-06T00:50:02.69] # Actual: testWorkDir=/export/local/5422.JDK6_UR.PROMOTION.VM+vm_6-ur_server_mixed_solaris-i586_115718536A0/results/ResultDir/b4296365/
[2007-10-06T00:50:02.69] export testWorkDir
[2007-10-06T00:50:02.69] tlogOutFile="${test_work_dir}/${test_name}.tlog"
[2007-10-06T00:50:02.69] # Actual: tlogOutFile=/export/local/5422.JDK6_UR.PROMOTION.VM+vm_6-ur_server_mixed_solaris-i586_115718536A0/results/ResultDir/b4296365/b4296365.tlog
[2007-10-06T00:50:02.69] testErrFile="${test_work_dir}/${test_name}.err"
[2007-10-06T00:50:02.69] # Actual: testErrFile=/export/local/5422.JDK6_UR.PROMOTION.VM+vm_6-ur_server_mixed_solaris-i586_115718536A0/results/ResultDir/b4296365/b4296365.err
[2007-10-06T00:50:02.69] EXECUTE_CLASS="${test_name}"
[2007-10-06T00:50:02.69] # Actual: EXECUTE_CLASS=b4296365
[2007-10-06T00:50:02.69] EXECUTE_CLASS="nsk.regression.b4296365.b4296365"
[2007-10-06T00:50:02.69] # Actual: EXECUTE_CLASS=nsk.regression.b4296365.b4296365
[2007-10-06T00:50:02.69] APPLICATION_TIMEOUT="${TIMEOUT}"
[2007-10-06T00:50:02.69] # Actual: APPLICATION_TIMEOUT=15
[2007-10-06T00:50:02.69] CLASSPATH="${test_work_dir}${PS}${CLASSPATH}"
[2007-10-06T00:50:02.69] # Actual: CLASSPATH=/export/local/5422.JDK6_UR.PROMOTION.VM+vm_6-ur_server_mixed_solaris-i586_115718536A0/results/ResultDir/b4296365:/net/vmsqe.russia/export/gtee/suites/6-ur/vm/bin/classes:/export/local/common/jdk/6/latest/solaris-i586/lib/tools.jar
[2007-10-06T00:50:02.69] export CLASSPATH
[2007-10-06T00:50:02.69] ${JAVA} ${JAVA_OPTS} ${EXECUTE_CLASS} ${TEST_ARGS}
[2007-10-06T00:50:02.69] # Actual: /export/local/common/jdk/6/latest/solaris-i586/bin/java -server -Xmixed -DHANGINGJAVA6169 nsk.regression.b4296365.b4296365
[2007-10-06T00:50:02.69] Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
[2007-10-06T00:50:05.10] 	at javax.swing.text.PlainView.paint(PlainView.java:297)
[2007-10-06T00:50:05.10] 	at javax.swing.plaf.basic.BasicTextUI$RootView.paint(BasicTextUI.java:1421)
[2007-10-06T00:50:05.10] 	at javax.swing.plaf.basic.BasicTextUI.paintSafely(BasicTextUI.java:725)
[2007-10-06T00:50:05.10] 	at javax.swing.plaf.basic.BasicTextUI.paint(BasicTextUI.java:868)
[2007-10-06T00:50:05.10] 	at javax.swing.plaf.basic.BasicTextUI.update(BasicTextUI.java:847)
[2007-10-06T00:50:05.10] 	at javax.swing.JComponent.paintComponent(JComponent.java:763)
[2007-10-06T00:50:05.10] 	at javax.swing.JComponent.paint(JComponent.java:1027)
[2007-10-06T00:50:05.10] 	at javax.swing.JComponent.paintChildren(JComponent.java:864)
[2007-10-06T00:50:05.10] 	at javax.swing.JComponent.paint(JComponent.java:1036)
[2007-10-06T00:50:05.10] 	at javax.swing.JViewport.paint(JViewport.java:747)
[2007-10-06T00:50:05.10] 	at javax.swing.JComponent.paintChildren(JComponent.java:864)
[2007-10-06T00:50:05.10] 	at javax.swing.JComponent.paint(JComponent.java:1036)
[2007-10-06T00:50:05.10] 	at javax.swing.JComponent.paintToOffscreen(JComponent.java:5122)
[2007-10-06T00:50:05.10] 	at javax.swing.BufferStrategyPaintManager.paint(BufferStrategyPaintManager.java:285)
[2007-10-06T00:50:05.10] 	at javax.swing.RepaintManager.paint(RepaintManager.java:1128)
[2007-10-06T00:50:05.11] 	at javax.swing.JComponent._paintImmediately(JComponent.java:5070)
[2007-10-06T00:50:05.11] 	at javax.swing.JComponent.paintImmediately(JComponent.java:4880)
[2007-10-06T00:50:05.11] 	at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:723)
[2007-10-06T00:50:05.11] 	at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:679)
[2007-10-06T00:50:05.11] 	at javax.swing.RepaintManager.seqPaintDirtyRegions(RepaintManager.java:659)
[2007-10-06T00:50:05.11] 	at javax.swing.SystemEventQueueUtilities$ComponentWorkRequest.run(SystemEventQueueUtilities.java:128)
[2007-10-06T00:50:05.11] 	at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
[2007-10-06T00:50:05.11] 	at java.awt.EventQueue.dispatchEvent(EventQueue.java:597)
[2007-10-06T00:50:05.11] 	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:273)
[2007-10-06T00:50:05.11] 	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:183)
[2007-10-06T00:50:05.11] 	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:173)
[2007-10-06T00:50:05.11] 	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:168)
[2007-10-06T00:50:05.11] 	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:160)
[2007-10-06T00:50:05.11] 	at java.awt.EventDispatchThread.run(EventDispatchThread.java:121)
[2007-10-06T00:50:05.11] Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
[2007-10-06T00:50:05.11] 	at javax.swing.text.PlainView.paint(PlainView.java:297)
[2007-10-06T00:50:05.11] 	at javax.swing.plaf.basic.BasicTextUI$RootView.paint(BasicTextUI.java:1421)
[2007-10-06T00:50:05.11] 	at javax.swing.plaf.basic.BasicTextUI.paintSafely(BasicTextUI.java:725)
[2007-10-06T00:50:05.11] 	at javax.swing.plaf.basic.BasicTextUI.paint(BasicTextUI.java:868)
[2007-10-06T00:50:05.11] 	at javax.swing.plaf.basic.BasicTextUI.update(BasicTextUI.java:847)
[2007-10-06T00:50:05.11] 	at javax.swing.JComponent.paintComponent(JComponent.java:763)
[2007-10-06T00:50:05.11] 	at javax.swing.JComponent.paint(JComponent.java:1027)
[2007-10-06T00:50:05.11] 	at javax.swing.JComponent.paintChildren(JComponent.java:864)
[2007-10-06T00:50:05.11] 	at javax.swing.JComponent.paint(JComponent.java:1036)
[2007-10-06T00:50:05.11] 	at javax.swing.JViewport.paint(JViewport.java:747)
[2007-10-06T00:50:05.11] 	at javax.swing.JComponent.paintChildren(JComponent.java:864)
[2007-10-06T00:50:05.11] 	at javax.swing.JComponent.paint(JComponent.java:1036)
[2007-10-06T00:50:05.11] 	at javax.swing.JComponent.paintToOffscreen(JComponent.java:5122)
[2007-10-06T00:50:05.11] 	at javax.swing.BufferStrategyPaintManager.paint(BufferStrategyPaintManager.java:285)
[2007-10-06T00:50:05.11] 	at javax.swing.RepaintManager.paint(RepaintManager.java:1128)
[2007-10-06T00:50:05.12] 	at javax.swing.JComponent._paintImmediately(JComponent.java:5070)
[2007-10-06T00:50:05.12] 	at javax.swing.JComponent.paintImmediately(JComponent.java:4880)
[2007-10-06T00:50:05.12] 	at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:723)
[2007-10-06T00:50:05.12] 	at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:679)
[2007-10-06T00:50:05.12] 	at javax.swing.RepaintManager.seqPaintDirtyRegions(RepaintManager.java:659)
[2007-10-06T00:50:05.12] 	at javax.swing.SystemEventQueueUtilities$ComponentWorkRequest.run(SystemEventQueueUtilities.java:128)
[2007-10-06T00:50:05.12] 	at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
[2007-10-06T00:50:05.12] 	at java.awt.EventQueue.dispatchEvent(EventQueue.java:597)
[2007-10-06T00:50:05.12] 	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:273)
[2007-10-06T00:50:05.12] 	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:183)
[2007-10-06T00:50:05.12] 	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:173)
[2007-10-06T00:50:05.12] 	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:168)
[2007-10-06T00:50:05.12] 	at java.awt.EventDispatchThread.pumpEvents(EventDispat==> nsk/regression/b4296365 test LOG:
[2007-10-06T00:50:10.79] --> This test on #4296365 bug; Category: hotspot; Subcategory: other
[2007-10-06T00:50:10.79]     Synopsis: The JVM crashed with "HotSpot Virtual Machine Error"
[2007-10-06T00:50:10.79] 
[2007-10-06T00:50:10.79] --> b4296365: All Threads have started: 4 threads!
[2007-10-06T00:50:10.79] #
[2007-10-06T00:50:10.79] # An unexpected error has been detected by Java Runtime Environment:
[2007-10-06T00:50:10.79] #
[2007-10-06T00:50:10.79] #  SIGSEGV (0xb) at pc=0xd109a217, pid=6489, tid=21
[2007-10-06T00:50:10.79] #
[2007-10-06T00:50:10.79] # Java VM: Java HotSpot(TM) Server VM (10.0-b17 mixed mode solaris-x86)
[2007-10-06T00:50:10.79] # Problematic frame:
[2007-10-06T00:50:10.79] # V  [libjvm.so+0x49a217]
[2007-10-06T00:50:10.79] #
[2007-10-06T00:50:10.79] # An error report file with more information is saved as:
[2007-10-06T00:50:10.79] # /export/local/5422.JDK6_UR.PROMOTION.VM+vm_6-ur_server_mixed_solaris-i586_115718536A0/results/ResultDir/b4296365/hs_err_pid6489.log
[2007-10-06T00:50:10.79] #
[2007-10-06T00:50:10.79] # If you would like to submit a bug report, please visit:
[2007-10-06T00:50:10.79] #   http://java.sun.com/webapps/bugreport/crash.jsp
[2007-10-06T00:50:10.79] #
[2007-10-06T00:50:10.79] chThread.java:160)
[2007-10-06T00:50:10.79] 	at java.awt.EventDispatchThread.run(EventDispatchThread.java:121)
[2007-10-06T00:50:10.79] # Test level exit status: 6
[2007-10-06T00:50:11.82] 

file:///net/vice.russia/export/home0/results/6u4/b04/vm/vm/solaris-i586/server/mixed/vm-vm_6-ur_server_mixed_solaris-i5862007-10-05-22-55-30/ResultDir/b4296365/

= Full hs err log

Available in comments.

Comments
EVALUATION The C2 compiler inlines an intrinsic arraycopy at bci 140 in the method javax/swing/text/AbstractDocument$BranchElement.replace as inlined from javax/swing/text/PlainDocument.insertUpdate. The inlined version calls the specialized checkcast_arraycopy form generated as a stub by the compiler. The x86 32-bit version of this stub fails to restore the destination address of the copy before generating the post-write card marks for a fully successful copy. This will likely cause the wrong cards to be marked, making for unpredicatable behavior after a GC.
31-10-2007