JDK-6773838 : There is no calling stack for Compiler thread in hs_err file on x86
  • Type: Bug
  • Component: hotspot
  • Sub-Component: runtime
  • Affected Version: hs14
  • Priority: P3
  • Status: Closed
  • Resolution: Fixed
  • OS: solaris_10
  • CPU: sparc
  • Submitted: 2008-11-19
  • Updated: 2012-10-08
  • Resolved: 2009-01-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.
JDK 6 JDK 7 Other
6u14Fixed 7Fixed hs14Fixed
Related Reports
Relates :  
Description
Both 32-bits and 64-bits VM have this problem:

% /java/re/jdk/7/latest/binaries/solaris-amd64/fastdebug/bin/java -server -XX:-UseLoopSafepoints -Xcomp t
VM option '-UseLoopSafepoints'
# To suppress the following error report, specify this argument
# after -XX: or in .hotspotrc:  SuppressErrorAt=/phaseX.cpp:775
#
# A fatal error has been detected by the Java Runtime Environment:
#
#  Internal Error (/BUILD_AREA/jdk7/hotspot/src/share/vm/opto/phaseX.cpp:775), pid=13672, tid=20
#  Error: assert(false,"Parse::remove_useless_nodes missed this node")
#
# Java VM: Java HotSpot(TM) Server VM (14.0-b06-fastdebug compiled mode solaris-x86 )
# An error report file with more information is saved as:
# /export/kvn/build/6766316/solaris_amd64_compiler2/fastdebug/hs_err_pid13672.log
#

% more hs_err_pid13672.log
#
# A fatal error has been detected by the Java Runtime Environment:
#
#  Internal Error (/BUILD_AREA/jdk7/hotspot/src/share/vm/opto/phaseX.cpp:775), p
id=13672, tid=20
#  Error: assert(false,"Parse::remove_useless_nodes missed this node")
#
# Java VM: Java HotSpot(TM) Server VM (14.0-b06-fastdebug compiled mode solaris-
x86 )
# 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 (0x0824b000):  JavaThread "CompilerThread0" daemon [_thread_in_na
tive, id=20, stack(0xb49f4000,0xb4a34000)]

Stack: [0xb49f4000,0xb4a34000],  sp=0xb4a313c8,  free space=244k

Current CompileTask:
C2:  2   b  java.lang.Thread.init(Ljava/lang/ThreadGroup;Ljava/lang/Runnable;Lja
va/lang/String;J)V (202 bytes)


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

Java Threads: ( => current thread )
  0x0824d000 JavaThread "CompilerThread1" daemon [_thread_blocked, id=21, stack(
0xb49b2000,0xb49f2000)]
=>0x0824b000 JavaThread "CompilerThread0" daemon [_thread_in_native, id=20, stac
k(0xb49f4000,0xb4a34000)]
  0x08249400 JavaThread "Signal Dispatcher" daemon [_thread_blocked, id=19, stac
k(0xb4a36000,0xb4a86000)]
  0x08227800 JavaThread "Finalizer" daemon [_thread_blocked, id=18, stack(0xb4a8
8000,0xb4ad8000)]
  0x08226000 JavaThread "Reference Handler" daemon [_thread_blocked, id=17, stac
k(0xb4ada000,0xb4b2a000)]
  0x0807bc00 JavaThread "main" [_thread_blocked, id=2, stack(0xfc8da000,0xfc92a0
00)]

Comments
EVALUATION Fix checked in to hotspot_rt today (hope I got the baselevel right this time). 6773838: There is no calling stack for Compiler thread in hs_err file on x86 Summary: On solaris, the inline assembly wasn't being processed. Added volatile to il file fixed it. Reviewed-by: phh, kvn
08-12-2008

EVALUATION http://hg.openjdk.java.net/jdk7/hotspot-rt/hotspot/rev/7b920868b475
08-12-2008

EVALUATION The C++ compiler (on SS11 and SS12) wasn't emitting code for the .il file correctly to get the previous_fp. Adding .volatile and taking out the extra mov eax, eax corrected the problem. It also corrected the problem with the SS12 tools too. I verified that we don't have this problem on linux i486 or solaris sparc.
08-12-2008