JDK-4481501 : CTW assertion at os.cpp, 727
  • Type: Bug
  • Component: hotspot
  • Sub-Component: compiler
  • Affected Version: 1.4.0
  • Priority: P2
  • Status: Closed
  • Resolution: Fixed
  • OS: solaris_8
  • CPU: x86
  • Submitted: 2001-07-18
  • Updated: 2004-01-06
  • Resolved: 2001-07-31
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.
Other
1.4.0 beta2Fixed
Related Reports
Relates :  
Description

Name: fh87463			Date: 07/18/2001



Following assertion occur when running Compile The World tests on solx86 platform.
When running the same testcase on linux platform, it said "The exception was detected in native code
outside the VM"

# HotSpot Virtual Machine Error : 11
# Error ID : /net/jano/export/disk05/hotspot/auto/ws_telluride/fpt/src/share/vm/runtime/os.cpp, 727
# Please report this error at
# http://java.sun.com/cgi-bin/bugreport.cgi
#
# Java VM: Java HotSpot(TM) Server VM (optimized+1.4+baseline+compiler2+20010717-023055-debug mixed mode)
#
# An error report file has been saved as hs_err_pid6017.log.
# Please refer to the file for further information.
#
Dumping core....
VM option '+CompileTheWorld'
VM option 'MinInliningThreshold=0'
VM option 'MaxPermSize=64m'
VM option 'CompileTheWorldStartAt=0'
VM option 'CompileTheWorldStopAt=499'
/net/sqesvr/export/vsn/users/ctwresult/scripts/compileTheWorld/result/solx86/baseline/compiler2/20010717-023055/run.ZKM.jar.0.499.ksh[35]: 6017 Abort
Exit Value 134
*****Compile The World End AT Wed Jul 18 06:06:26 PDT 2001*****
This assertion occured in following log files
========================================================
file:/net/sqesvr/export/vsn/users/ctwresult/solx86/baseline/compiler2/20010717-023055/ctw.ZKM.jar.0.499.txt
jar: /net/sqesvr/export/vsn/VM/testbase/testbase_vm/src/jit/compiletheworld/jars/u-z/ZKM.jar

Binary used:
  Fastdebug binary of [baseline/compiler2/20010717-023055] from build archive page. 

Please look into rerun scripts for more detail.

#########################
# To reproduce the bug:
#########################
1. cd /net/jano.eng/export/disk20/GammaBase/Bugs/[bug ID]
2. edit script if needed.
3. run one of the shell scripts: 
   run.ZKM.jar.0.499.ksh

#########################
# Rerun script 
#########################
$ cat run.ZKM.jar.0.499.ksh
#!/bin/ksh
# Script automatic generated at Wed Jul 18 06:04:52 PDT 2001 by fhsu
#
print "Running $(cd $(dirname $0) ; pwd)/$(basename $0)"


export JAVA_HOME=/net/jdk.eng/export/disk6/promoted/jdk/1.4/latest/binaries/solx86
case "$(uname)" in
  SunOS)
    platform="$(uname -p)" # i386 or sparc
    ;;
  Linux|Windows*)
    platform="i386"
    ;;
esac
FLAGS="-XXaltjvm=/net/taloraan/export/vsn/VM/merlin/nightly/binary/baseline/20010717-023055/solx86/compiler2/fastdebug -verify -XX:+CompileTheWorld -XX:MinInliningThreshold=0 -XX:MaxPermSize=64m"
VMTYPE="-XXaltjvm=/net/taloraan/export/vsn/VM/merlin/nightly/binary/baseline/20010717-023055/solx86/compiler2/fastdebug"
JARFILE="/net/sqesvr/export/vsn/VM/testbase/testbase_vm/src/jit/compiletheworld/jars/u-z/ZKM.jar"
START=0
END=499
CMDLINE="$JAVA_HOME/bin/java $FLAGS -XX:CompileTheWorldStartAt=$START -XX:CompileTheWorldStopAt=$END -Xbootclasspath/p:${JARFILE}"

print "*****Debug Info: java -version(-Xinternalversion)*****"
$JAVA_HOME/bin/java ${VMTYPE} -version 2>&1 
$JAVA_HOME/bin/java ${VMTYPE} -fullversion 2>&1
$JAVA_HOME/bin/java ${VMTYPE} -Xinternalversion 2>&1
print "*****Debug Info: JAVA_HOME*****"
print "JAVA_HOME=$JAVA_HOME"
print "*****Debug Info: Machine Used*****"
print "$(uname -a)"

print "*****Debug Info: Command Line As Follow*****"
print "$CMDLINE"
print "*****Compile The World Start AT $(date)*****"
ksh -c "${CMDLINE}"
print "Exit Value $?"
echo "*****Compile The World End AT $(date)*****"
    

======================================================================

Comments
CONVERTED DATA BugTraq+ Release Management Values COMMIT TO FIX: merlin-beta2 FIXED IN: merlin-beta2 INTEGRATED IN: merlin-beta2 VERIFIED IN: merlin-beta2
14-06-2004

SUGGESTED FIX Source diffs are attached. ###@###.### 2004-01-06
06-01-2004

EVALUATION Dies on sparc & intel with -XX:+CompileTheWorld -XX:CompileTheWorldStartAt=150 -XX:MinInliningThreshold=0 -XX:-UseTLAB -Xbootclasspath/p:ZKM.jar cliff.click@eng 2001-07-23 In domgraph.cpp: If the returned dfsnum does not match the number of blocks, then we must have some unreachable loops. These can be made at any time by IterGVN. They are cleaned up by CCP or the loop opts, but the last IterGVN can always make more that are not cleaned up. Highly unlikely except in ZKM.jar, where endless irreducible loops cause the loop opts to not get run. Having found unreachable loops, we have made a bad RPO _block layout. We can re-run the above DFS pass with the correct number of blocks, and hack the Tarjan algorithm below to be robust in the presence of such dead loops (as was done for the NTarjan code farther below). Since this situation is so unlikely, instead I've decided to bail out. cliff.click@eng 2001-07-24
24-07-2001