JDK-8337319 : EXCEPTION_ACCESS_VIOLATION in PhaseChaitin::Split
  • Type: Bug
  • Component: hotspot
  • Sub-Component: compiler
  • Affected Version: 24
  • Priority: P4
  • Status: Closed
  • Resolution: Cannot Reproduce
  • OS: windows
  • CPU: x86_64
  • Submitted: 2024-07-28
  • Updated: 2024-07-29
  • Resolved: 2024-07-29
Related Reports
Relates :  
Description
The following test crashed in the JDK24 CI:

applications/runthese/RunThese8H.java

Here's a snippet from the log file:

[2024-07-27T23:46:20.395139500Z] Gathering output for process 27904
[2024-07-27T23:46:20.504509600Z] Waiting for completion for process 27904
[2024-07-27T23:46:20.504509600Z] Waiting for completion finished for process 27904
[stress.process.out] #
[stress.process.out] # A fatal error has been detected by the Java Runtime Environment:
[stress.process.out] #
[stress.process.out] #  EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x00007ffdf2f4cb01, pid=24560, tid=64320
[stress.process.out] #
[stress.process.out] # JRE version: Java(TM) SE Runtime Environment (24.0+8) (fastdebug build 24-ea+8-851)
[stress.process.out] # Java VM: Java HotSpot(TM) 64-Bit Server VM (fastdebug 24-ea+8-851, mixed mode, tiered, compressed oops, compressed class ptrs, g1 gc, windows-amd64)
[stress.process.out] # Problematic frame:
[stress.process.out] # V  [jvm.dll+0xd3cb01]  PhaseChaitin::Split+0x18f1
[stress.process.out] #
[stress.process.out] # Core dump will be written. Default location: C:\\sb\\prod\\1722107381\\testoutput\\test-support\\jtreg_closed_test_hotspot_jtreg_applications_runthese_RunThese8H_java\\scratch\\0\\hs_err_pid24560.mdmp
[stress.process.out] #
[stress.process.out] # JFR recording file will be written. Location: C:\\sb\\prod\\1722107381\\testoutput\\test-support\\jtreg_closed_test_hotspot_jtreg_applications_runthese_RunThese8H_java\\scratch\\0\\hs_err_pid24560.jfr
[stress.process.out] #
[stress.process.out] Unsupported internal testing APIs have been used.
[stress.process.out] 
[stress.process.out] # An error report file with more information is saved as:
[stress.process.out] # C:\\sb\\prod\\1722107381\\testoutput\\test-support\\jtreg_closed_test_hotspot_jtreg_applications_runthese_RunThese8H_java\\scratch\\0\\hs_err_pid24560.log
[stress.process.out] #
[stress.process.out] # Compiler replay data is saved as:
[stress.process.out] # C:\\sb\\prod\\1722107381\\testoutput\\test-support\\jtreg_closed_test_hotspot_jtreg_applications_runthese_RunThese8H_java\\scratch\\0\\replay_pid24560.log
[stress.process.out] #
[stress.process.out] # If you would like to submit a bug report, please visit:
[stress.process.out] #   https://bugreport.java.com/bugreport/crash.jsp
[stress.process.out] #
[2024-07-27T23:47:21.284556Z] Gathering output for process 31828
[2024-07-27T23:47:22.363935500Z] Waiting for completion for process 31828
[2024-07-27T23:47:22.363935500Z] Waiting for completion finished for process 31828

Here's the crashing thread's stack:

---------------  T H R E A D  ---------------

Current thread (0x000001fe3048a680):  JavaThread "C2 CompilerThread1" daemon [_thread_in_native, id=64320, stack(0x00000031bc700000,0x00000031bc800000) (1024K)]


Current CompileTask:
C2:15840296 292663       4       jdk.internal.classfile.impl.BufWriterImpl::<init> (11 bytes)

Stack: [0x00000031bc700000,0x00000031bc800000],  sp=0x00000031bc7fc1e0,  free space=1008k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
V  [jvm.dll+0xd3cb01]  PhaseChaitin::Split+0x18f1  (reg_split.cpp:930)
V  [jvm.dll+0x42eaf6]  PhaseChaitin::Register_Allocate+0x3e6  (chaitin.cpp:485)
V  [jvm.dll+0x4e8b89]  Compile::Code_Gen+0x259  (compile.cpp:2969)
V  [jvm.dll+0x4e763e]  Compile::Compile+0x12be  (compile.cpp:886)
V  [jvm.dll+0x3f4fb9]  C2Compiler::compile_method+0x179  (c2compiler.cpp:145)
V  [jvm.dll+0x5046e7]  CompileBroker::invoke_compiler_on_method+0x747  (compileBroker.cpp:2306)
V  [jvm.dll+0x501d5b]  CompileBroker::compiler_thread_loop+0x33b  (compileBroker.cpp:1962)
V  [jvm.dll+0x806b26]  JavaThread::thread_main_inner+0x266  (javaThread.cpp:758)
V  [jvm.dll+0xec2f97]  Thread::call_run+0x1b7  (thread.cpp:230)
V  [jvm.dll+0xc9d016]  thread_native_entry+0xd6  (os_windows.cpp:553)
C  [ucrtbase.dll+0x2268a]  (no source info available)
C  [KERNEL32.DLL+0x17ac4]  (no source info available)
C  [ntdll.dll+0x5a4e1]  (no source info available)


siginfo: EXCEPTION_ACCESS_VIOLATION (0xc0000005), reading address 0x000001ff0ff1a020
Comments
Looks like JDK-8336095. Let's close as Cannot Reproduce for now and re-open if it fails again after the fix propagated.
29-07-2024