JDK-7068051 : SIGSEGV in PhaseIdealLoop::build_loop_late_post on T5440
  • Type: Bug
  • Status: Closed
  • Resolution: Fixed
  • Component: hotspot
  • Sub-Component: compiler
  • Priority: P2
  • Affected Version: hs21,6u26-rev,7-pool
  • OS: generic,solaris
  • CPU: generic
  • Submit Date: 2011-07-18
  • Updated Date: 2014-03-17
  • Resolved Date: 2011-11-25
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 Availabitlity Release.

To download the current JDK release, click here.
JDK 6 JDK 7 JDK 8
6u29Resolved 7Resolved 8Fixed
Related Reports
Duplicate :  
Relates :  
Relates :  
Relates :  
Description
Application client crashes with 

# A fatal error has been detected by the Java Runtime Environment:
#
#  SIGSEGV (0xb) at pc=0xffffffff7e463aa8, pid=15413, tid=53
#
# JRE version: 7.0-b147
# Java VM: Java HotSpot(TM) 64-Bit Server VM (21.0-b17 mixed mode solaris-sparc compressed oops)
# Problematic frame:
# V  [libjvm.so+0x863aa8]  void PhaseIdealLoop::build_loop_late_post(Node*)+0x510

Stack: [0xfffffff967400000,0xfffffff967500000],  sp=0xfffffff9674f9bd0,  free space=998k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
V  [libjvm.so+0x863aa8]  void PhaseIdealLoop::build_loop_late_post(Node*)+0x510
V  [libjvm.so+0x860e7c]  void PhaseIdealLoop::build_and_optimize(bool)+0xdfc
V  [libjvm.so+0x2522f4]  void Compile::Optimize()+0x5c4
V  [libjvm.so+0x501d20]  Compile::Compile(ciEnv*,C2Compiler*,ciMethod*,int,bool,bool)+0x11c8
V  [libjvm.so+0x24c054]  void C2Compiler::compile_method(ciEnv*,ciMethod*,int)+0xac
V  [libjvm.so+0x24d324]  void CompileBroker::invoke_compiler_on_method(CompileTask*)+0xd8c
V  [libjvm.so+0x2cacd0]  void CompileBroker::compiler_thread_loop()+0x928
V  [libjvm.so+0xa2b550]  void JavaThread::thread_main_inner()+0x40
V  [libjvm.so+0x9285ac]  java_start+0x2b4


Current CompileTask:
C2:  11447    2 % !         atg.core.net.URLHammerThread::run @ 1706 (2785 bytes)

Comments
EVALUATION See main CR
2011-09-12

EVALUATION See main CR
2011-09-01

EVALUATION http://hg.openjdk.java.net/hsx/hotspot-rt/hotspot/rev/c96c3eb1efae
2011-08-23

EVALUATION Verified by running Tomcat on b148 /net/stt-13.russia.sun.com/export/home0/results/1.7.0/b148/bigapps/Tomcat_1.7.0_b148_solaris10-sun4u-64_131C527419A
2011-08-16

EVALUATION http://hg.openjdk.java.net/hsx/hotspot-comp/hotspot/rev/c96c3eb1efae
2011-07-29

SUGGESTED FIX Vladimir said: Remove predicate cloning from loop peeling optimization and from split fall-in paths. Leave it in loop unswitching code which is safe. Don't allow split loop entry path in IGVN optimization for Phi nodes. And do not clone predicates below merge points in split-if optimization. Remove move_loop_predicate() and eliminate_loop_predicates() unused methods.
2011-07-29

EVALUATION The code added in 7004535 changes does not take into account that cloning/moving predicates below merge points invalidate jvm states recorded in corresponding uncommon traps. Phi nodes should be created for values referenced by predicate's uncommon traps when a predicate is cloned.
2011-07-19