JDK-8366938 : Test runtime/handshake/HandshakeTimeoutTest.java crashed
  • Type: Bug
  • Component: hotspot
  • Sub-Component: runtime
  • Affected Version: 17,26
  • Priority: P2
  • Status: Resolved
  • Resolution: Fixed
  • Submitted: 2025-09-04
  • Updated: 2025-10-14
  • Resolved: 2025-09-10
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 26
26 b15Fixed
Related Reports
Causes :  
Description
The hs_err file shows the SIGILL in the compiler thread due to a handshake timeout. However the core dump shows that the compiler thread encountered a signal whilst executring mprotect form within malloc, and it then gets repeated signals until presumably we get the SIGILL due to the timeout. Meanwhile maloc is unusable and all other threads lock up and the WatcherThread then tries to kill the VM. All in all a bit of a train wreck and no way to be sure what happened first. See comments for stack details.
Comments
Changeset: 8ab8d02e Branch: master Author: David Holmes <dholmes@openjdk.org> Date: 2025-09-10 05:45:31 +0000 URL: https://git.openjdk.org/jdk/commit/8ab8d02e40e987a5eb5e8036ff4f12146ac2b16a
10-09-2025

A pull request was submitted for review. Branch: master URL: https://git.openjdk.org/jdk/pull/27183 Date: 2025-09-10 05:32:19 +0000
10-09-2025

I think what we are seeing here is simply the result of trying to apply the timeout handlers actions to the VM that has "crashed" as expected. We can see from the jtr log that the test actually completed successfully, but then the timeout handler was engaged. ----------System.err:(25/1364)---------- stdout: [[0.336s][error][handshake] Handshake timeout: ALotOfHandshakeClosure(0x00007f8595ffed40), pending threads: 1 [0.336s][error][handshake] JavaThread 0x00007f85bc02ea40 has not cleared handshake op: 0x00007f8595ffed40 # # A fatal error has been detected by the Java Runtime Environment: # # SIGILL (0x4) at pc=0x00007f85c4b2da92 (sent by handshake timeout handler), pid=1074000, tid=1074001 # # JRE version: Java(TM) SE Runtime Environment (26.0+15) (fastdebug build 26-ea+15-1475) # Java VM: Java HotSpot(TM) 64-Bit Server VM (fastdebug 26-ea+15-1475, mixed mode, sharing, tiered, compressed oops, compressed class ptrs, g1 gc, linux-amd64) # Problematic frame: # C [libc.so.6+0x98a92][thread 1074013 also had an error] [timeout occurred during error reporting in step "printing problematic frame"] after 30 s. # CreateCoredumpOnCrash turned off, no core file dumped # # An error report file with more information is saved as: # /opt/mach5/mesos/work_dir/slaves/7b1a61fd-59de-400e-939e-76c8ba818320-S93529/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/5ad7c2bc-717d-4fad-a407-27f12ca98cba/runs/d7cbf074-bd40-4280-94bd-7d2f7a81e43e/testoutput/test-support/jtreg_open_test_hotspot_jtreg_tier1_runtime_no_cds/scratch/4/hs_err_pid1074000.log # [ timer expired, abort... ] ]; stderr: [] exitValue = 134 JavaTest Message: Test complete. result: Error. "driver" action timed out with a timeout of 120 seconds on agent 28 I think this is simply a consequence of the timeout-factor change and we need to restore the original timeout value of 480 seconds. Whilst this test normally runs very quickly (< 1 s) we can also see it taking over 2 minutes - hence the reduced timeout would now kick in.
10-09-2025

ILW=HMM=P2
09-09-2025

A second occurrunce shows the original signal here: #70 <signal handler called> #71 0x00007f85c4b2da92 in _int_free () from /lib64/libc.so.6 #72 0x00007f85c2644880 in ChunkPool::deallocate_chunk(Chunk*) () from /opt/mach5/mesos/work_dir/jib-master/install/jdk-26+15-1475/linux-x64-debug.jdk/jdk-26/fastdebug/lib/server/libjvm.so #73 0x00007f85c2644c0c in Chunk::next_chop(Chunk*) () from /opt/mach5/mesos/work_dir/jib-master/install/jdk-26+15-1475/linux-x64-debug.jdk/jdk-26/fastdebug/lib/server/libjvm.so #74 0x00007f85c25d676d in ResourceMarkImpl::~ResourceMarkImpl() () from /opt/mach5/mesos/work_dir/jib-master/install/jdk-26+15-1475/linux-x64-debug.jdk/jdk-26/fastdebug/lib/server/libjvm.so
08-09-2025

Thread 17 (Thread 0xffff773ab120 (LWP 505401)): #0 0x0000ffffaf9f5984 in __lll_lock_wait_private () from /lib64/libc.so.6 #1 0x0000ffffafa09050 in malloc () from /lib64/libc.so.6 #2 0x0000ffffaf9e4608 in __fopen_internal () from /lib64/libc.so.6 #3 0x0000ffffaeba9c8c in os::fopen(char const*, char const*) () from /opt/mach5/mesos/work_dir/jib-master/install/jdk-26+14-1439/linux-aarch64-debug.jdk/jdk-26/fastdebug/lib/server/libjvm.so #4 0x0000ffffaebb6f84 in os::vm_min_address() () from /opt/mach5/mesos/work_dir/jib-master/install/jdk-26+14-1439/linux-aarch64-debug.jdk/jdk-26/fastdebug/lib/server/libjvm.so #5 0x0000ffffaea29810 in MallocTracker::print_pointer_information(void const*, outputStream*) () from /opt/mach5/mesos/work_dir/jib-master/install/jdk-26+14-1439/linux-aarch64-debug.jdk/jdk-26/fastdebug/lib/server/libjvm.so #6 0x0000ffffaea63d70 in MemTracker::print_containing_region(void const*, outputStream*) () from /opt/mach5/mesos/work_dir/jib-master/install/jdk-26+14-1439/linux-aarch64-debug.jdk/jdk-26/fastdebug/lib/server/libjvm.so #7 0x0000ffffaeba943c in os::print_location(outputStream*, long, bool) () from /opt/mach5/mesos/work_dir/jib-master/install/jdk-26+14-1439/linux-aarch64-debug.jdk/jdk-26/fastdebug/lib/server/libjvm.so #8 0x0000ffffaebc3758 in os::print_register_info(outputStream*, void const*, int&) () from /opt/mach5/mesos/work_dir/jib-master/install/jdk-26+14-1439/linux-aarch64-debug.jdk/jdk-26/fastdebug/lib/server/libjvm.so #9 0x0000ffffaefbf614 in VMError::report(outputStream*, bool) () from /opt/mach5/mesos/work_dir/jib-master/install/jdk-26+14-1439/linux-aarch64-debug.jdk/jdk-26/fastdebug/lib/server/libjvm.so #10 0x0000ffffaefc3cfc in VMError::report_and_die(int, char const*, char const*, std::__va_list, Thread*, unsigned char*, void const*, void const*, char const*, int, unsigned long) () from /opt/mach5/mesos/work_dir/jib-master/install/jdk-26+14-1439/linux-aarch64-debug.jdk/jdk-26/fastdebug/lib/server/libjvm.so #11 0x0000ffffaefc457c in VMError::report_and_die(Thread*, unsigned int, unsigned char*, void const*, void const*, char const*, ...) () from /opt/mach5/mesos/work_dir/jib-master/install/jdk-26+14-1439/linux-aarch64-debug.jdk/jdk-26/fastdebug/lib/server/libjvm.so #12 0x0000ffffaefc45f0 in VMError::report_and_die(Thread*, unsigned int, unsigned char*, void const*, void const*) () from /opt/mach5/mesos/work_dir/jib-master/install/jdk-26+14-1439/linux-aarch64-debug.jdk/jdk-26/fastdebug/lib/server/libjvm.so #13 0x0000ffffaefc4838 in crash_handler(int, siginfo_t*, void*) () from /opt/mach5/mesos/work_dir/jib-master/install/jdk-26+14-1439/linux-aarch64-debug.jdk/jdk-26/fastdebug/lib/server/libjvm.so #14 <signal handler called> #15 0x0000ffffaf9f5984 in __lll_lock_wait_private () from /lib64/libc.so.6 #16 0x0000ffffafa0a120 in calloc () from /lib64/libc.so.6 #17 0x0000ffffaf9f6744 in __pthread_attr_extension () from /lib64/libc.so.6 #18 0x0000ffffaf9f6aac in pthread_attr_setaffinity_np@GLIBC_2.17 () from /lib64/libc.so.6 #19 0x0000ffffaf9f9d80 in pthread_getattr_np@GLIBC_2.17 () from /lib64/libc.so.6 #20 0x0000ffffaebb8188 in os::current_stack_base_and_size(unsigned char**, unsigned long*) () from /opt/mach5/mesos/work_dir/jib-master/install/jdk-26+14-1439/linux-aarch64-debug.jdk/jdk-26/fastdebug/lib/server/libjvm.so #21 0x0000ffffaefbae3c in stack_has_headroom(unsigned long) [clone .constprop.0] () from /opt/mach5/mesos/work_dir/jib-master/install/jdk-26+14-1439/linux-aarch64-debug.jdk/jdk-26/fastdebug/lib/server/libjvm.so #22 0x0000ffffaefc1030 in VMError::report(outputStream*, bool) () from /opt/mach5/mesos/work_dir/jib-master/install/jdk-26+14-1439/linux-aarch64-debug.jdk/jdk-26/fastdebug/lib/server/libjvm.so #23 0x0000ffffaefc3cfc in VMError::report_and_die(int, char const*, char const*, std::__va_list, Thread*, unsigned char*, void const*, void const*, char const*, int, unsigned long) () from /opt/mach5/mesos/work_dir/jib-master/install/jdk-26+14-1439/linux-aarch64-debug.jdk/jdk-26/fastdebug/lib/server/libjvm.so #24 0x0000ffffaefc457c in VMError::report_and_die(Thread*, unsigned int, unsigned char*, void const*, void const*, char const*, ...) () from /opt/mach5/mesos/work_dir/jib-master/install/jdk-26+14-1439/linux-aarch64-debug.jdk/jdk-26/fastdebug/lib/server/libjvm.so #25 0x0000ffffaefc45f0 in VMError::report_and_die(Thread*, unsigned int, unsigned char*, void const*, void const*) () from /opt/mach5/mesos/work_dir/jib-master/install/jdk-26+14-1439/linux-aarch64-debug.jdk/jdk-26/fastdebug/lib/server/libjvm.so #26 0x0000ffffaefc4838 in crash_handler(int, siginfo_t*, void*) () from /opt/mach5/mesos/work_dir/jib-master/install/jdk-26+14-1439/linux-aarch64-debug.jdk/jdk-26/fastdebug/lib/server/libjvm.so #27 <signal handler called> #28 0x0000ffffaf9f5984 in __lll_lock_wait_private () from /lib64/libc.so.6 #29 0x0000ffffafa09050 in malloc () from /lib64/libc.so.6 #30 0x0000ffffaebace8c in os::malloc(unsigned long, MemTag, NativeCallStack const&) () from /opt/mach5/mesos/work_dir/jib-master/install/jdk-26+14-1439/linux-aarch64-debug.jdk/jdk-26/fastdebug/lib/server/libjvm.so #31 0x0000ffffadc5d98c in AllocateHeap(unsigned long, MemTag, AllocFailStrategy::AllocFailEnum) () from /opt/mach5/mesos/work_dir/jib-master/install/jdk-26+14-1439/linux-aarch64-debug.jdk/jdk-26/fastdebug/lib/server/libjvm.so #32 0x0000ffffae1154fc in ElfDecoder::get_source_info(unsigned char*, char*, unsigned long, int*, bool) () from /opt/mach5/mesos/work_dir/jib-master/install/jdk-26+14-1439/linux-aarch64-debug.jdk/jdk-26/fastdebug/lib/server/libjvm.so #33 0x0000ffffaeb1e2a8 in NativeStackPrinter::print_stack_from_frame(outputStream*, frame, char*, int, bool, int) () from /opt/mach5/mesos/work_dir/jib-master/install/jdk-26+14-1439/linux-aarch64-debug.jdk/jdk-26/fastdebug/lib/server/libjvm.so #34 0x0000ffffaeb1e4a0 in NativeStackPrinter::print_stack(outputStream*, char*, int, unsigned char*&, bool, int) () from /opt/mach5/mesos/work_dir/jib-master/install/jdk-26+14-1439/linux-aarch64-debug.jdk/jdk-26/fastdebug/lib/server/libjvm.so #35 0x0000ffffaefbff04 in VMError::report(outputStream*, bool) () from /opt/mach5/mesos/work_dir/jib-master/install/jdk-26+14-1439/linux-aarch64-debug.jdk/jdk-26/fastdebug/lib/server/libjvm.so #36 0x0000ffffaefc3cfc in VMError::report_and_die(int, char const*, char const*, std::__va_list, Thread*, unsigned char*, void const*, void const*, char const*, int, unsigned long) () from /opt/mach5/mesos/work_dir/jib-master/install/jdk-26+14-1439/linux-aarch64-debug.jdk/jdk-26/fastdebug/lib/server/libjvm.so #37 0x0000ffffaefc457c in VMError::report_and_die(Thread*, unsigned int, unsigned char*, void const*, void const*, char const*, ...) () from /opt/mach5/mesos/work_dir/jib-master/install/jdk-26+14-1439/linux-aarch64-debug.jdk/jdk-26/fastdebug/lib/server/libjvm.so #38 0x0000ffffaefc45f0 in VMError::report_and_die(Thread*, unsigned int, unsigned char*, void const*, void const*) () from /opt/mach5/mesos/work_dir/jib-master/install/jdk-26+14-1439/linux-aarch64-debug.jdk/jdk-26/fastdebug/lib/server/libjvm.so #39 0x0000ffffaefc4838 in crash_handler(int, siginfo_t*, void*) () from /opt/mach5/mesos/work_dir/jib-master/install/jdk-26+14-1439/linux-aarch64-debug.jdk/jdk-26/fastdebug/lib/server/libjvm.so #40 <signal handler called> #41 0x0000ffffaf9f5984 in __lll_lock_wait_private () from /lib64/libc.so.6 #42 0x0000ffffafa09050 in malloc () from /lib64/libc.so.6 #43 0x0000ffffaf9e4608 in __fopen_internal () from /lib64/libc.so.6 #44 0x0000ffffaeba9c8c in os::fopen(char const*, char const*) () from /opt/mach5/mesos/work_dir/jib-master/install/jdk-26+14-1439/linux-aarch64-debug.jdk/jdk-26/fastdebug/lib/server/libjvm.so #45 0x0000ffffaebb6340 in os::get_summary_cpu_info(char*, unsigned long) () from /opt/mach5/mesos/work_dir/jib-master/install/jdk-26+14-1439/linux-aarch64-debug.jdk/jdk-26/fastdebug/lib/server/libjvm.so #46 0x0000ffffaeba8e88 in os::print_summary_info(outputStream*, char*, unsigned long) () from /opt/mach5/mesos/work_dir/jib-master/install/jdk-26+14-1439/linux-aarch64-debug.jdk/jdk-26/fastdebug/lib/server/libjvm.so #47 0x0000ffffaefc0c74 in VMError::report(outputStream*, bool) () from /opt/mach5/mesos/work_dir/jib-master/install/jdk-26+14-1439/linux-aarch64-debug.jdk/jdk-26/fastdebug/lib/server/libjvm.so #48 0x0000ffffaefc3cfc in VMError::report_and_die(int, char const*, char const*, std::__va_list, Thread*, unsigned char*, void const*, void const*, char const*, int, unsigned long) () from /opt/mach5/mesos/work_dir/jib-master/install/jdk-26+14-1439/linux-aarch64-debug.jdk/jdk-26/fastdebug/lib/server/libjvm.so #49 0x0000ffffaefc457c in VMError::report_and_die(Thread*, unsigned int, unsigned char*, void const*, void const*, char const*, ...) () from /opt/mach5/mesos/work_dir/jib-master/install/jdk-26+14-1439/linux-aarch64-debug.jdk/jdk-26/fastdebug/lib/server/libjvm.so #50 0x0000ffffaefc45f0 in VMError::report_and_die(Thread*, unsigned int, unsigned char*, void const*, void const*) () from /opt/mach5/mesos/work_dir/jib-master/install/jdk-26+14-1439/linux-aarch64-debug.jdk/jdk-26/fastdebug/lib/server/libjvm.so #51 0x0000ffffaed745f4 in JVM_handle_linux_signal () from /opt/mach5/mesos/work_dir/jib-master/install/jdk-26+14-1439/linux-aarch64-debug.jdk/jdk-26/fastdebug/lib/server/libjvm.so #52 <signal handler called> #53 0x0000ffffafa5f08c in mprotect () from /lib64/libc.so.6 #54 0x0000ffffafa07224 in sysmalloc () from /lib64/libc.so.6 #55 0x0000ffffafa08260 in _int_malloc () from /lib64/libc.so.6 #56 0x0000ffffafa08d70 in malloc () from /lib64/libc.so.6 #57 0x0000ffffaebace8c in os::malloc(unsigned long, MemTag, NativeCallStack const&) () from /opt/mach5/mesos/work_dir/jib-master/install/jdk-26+14-1439/linux-aarch64-debug.jdk/jdk-26/fastdebug/lib/server/libjvm.so #58 0x0000ffffadcc7188 in ChunkPool::allocate_chunk(Arena*, unsigned long, AllocFailStrategy::AllocFailEnum) () from /opt/mach5/mesos/work_dir/jib-master/install/jdk-26+14-1439/linux-aarch64-debug.jdk/jdk-26/fastdebug/lib/server/libjvm.so #59 0x0000ffffadcc7fcc in Arena::grow(unsigned long, AllocFailStrategy::AllocFailEnum) () from /opt/mach5/mesos/work_dir/jib-master/install/jdk-26+14-1439/linux-aarch64-debug.jdk/jdk-26/fastdebug/lib/server/libjvm.so #60 0x0000ffffae02a99c in Compile::Init(bool) () from /opt/mach5/mesos/work_dir/jib-master/install/jdk-26+14-1439/linux-aarch64-debug.jdk/jdk-26/fastdebug/lib/server/libjvm.so #61 0x0000ffffae043248 in Compile::Compile(ciEnv*, TypeFunc const* (*)(), unsigned char*, char const*, StubId, int, bool, bool, DirectiveSet*) () from /opt/mach5/mesos/work_dir/jib-master/install/jdk-26+14-1439/linux-aarch64-debug.jdk/jdk-26/fastdebug/lib/server/libjvm.so #62 0x0000ffffaed09ef8 in OptoRuntime::generate_stub(ciEnv*, TypeFunc const* (*)(), unsigned char*, char const*, StubId, int, bool, bool) () from /opt/mach5/mesos/work_dir/jib-master/install/jdk-26+14-1439/linux-aarch64-debug.jdk/jdk-26/fastdebug/lib/server/libjvm.so #63 0x0000ffffaed0a3dc in OptoRuntime::generate(ciEnv*) () from /opt/mach5/mesos/work_dir/jib-master/install/jdk-26+14-1439/linux-aarch64-debug.jdk/jdk-26/fastdebug/lib/server/libjvm.so #64 0x0000ffffade7a57c in C2Compiler::init_c2_runtime() () from /opt/mach5/mesos/work_dir/jib-master/install/jdk-26+14-1439/linux-aarch64-debug.jdk/jdk-26/fastdebug/lib/server/libjvm.so #65 0x0000ffffade7a780 in C2Compiler::initialize() () from /opt/mach5/mesos/work_dir/jib-master/install/jdk-26+14-1439/linux-aarch64-debug.jdk/jdk-26/fastdebug/lib/server/libjvm.so #66 0x0000ffffae04d79c in CompileBroker::init_compiler_runtime() () from /opt/mach5/mesos/work_dir/jib-master/install/jdk-26+14-1439/linux-aarch64-debug.jdk/jdk-26/fastdebug/lib/server/libjvm.so #67 0x0000ffffae055c60 in CompileBroker::compiler_thread_loop() () from /opt/mach5/mesos/work_dir/jib-master/install/jdk-26+14-1439/linux-aarch64-debug.jdk/jdk-26/fastdebug/lib/server/libjvm.so #68 0x0000ffffae55fcc8 in JavaThread::thread_main_inner() () from /opt/mach5/mesos/work_dir/jib-master/install/jdk-26+14-1439/linux-aarch64-debug.jdk/jdk-26/fastdebug/lib/server/libjvm.so #69 0x0000ffffaeed7a1c in Thread::call_run() () from /opt/mach5/mesos/work_dir/jib-master/install/jdk-26+14-1439/linux-aarch64-debug.jdk/jdk-26/fastdebug/lib/server/libjvm.so #70 0x0000ffffaebb9fdc in thread_native_entry(Thread*) () from /opt/mach5/mesos/work_dir/jib-master/install/jdk-26+14-1439/linux-aarch64-debug.jdk/jdk-26/fastdebug/lib/server/libjvm.so #71 0x0000ffffaf9f8b50 in start_thread () from /lib64/libc.so.6 #72 0x0000ffffafa6319c in thread_start () from /lib64/libc.so.6
04-09-2025

# # A fatal error has been detected by the Java Runtime Environment: # # SIGILL (0x4) at pc=0x0000ffffafa5f08c (sent by handshake timeout handler), pid=505380, tid=505401 # # JRE version: Java(TM) SE Runtime Environment (26.0+14) (fastdebug build 26-ea+14-1439) # Java VM: Java HotSpot(TM) 64-Bit Server VM (fastdebug 26-ea+14-1439, mixed mode, sharing, tiered, compressed oops, compressed class ptrs, g1 gc, linux-aarch64) # Problematic frame: # C [libc.so.6+0xe708c] mprotect+0xc # # CreateCoredumpOnCrash turned off, no core file dumped # # If you would like to submit a bug report, please visit: # https://bugreport.java.com/bugreport/crash.jsp # --------------- S U M M A R Y ------------ Command Line: -XX:MaxRAMPercentage=6.25 -Dtest.boot.jdk=/opt/mach5/mesos/work_dir/jib-master/install/jdk/24/36/bundles/linux-aarch64/jdk-24_linux-aarch64_bin.tar.gz/jdk-24 -Djava.io.tmpdir=/opt/mach5/mesos/work_dir/slaves/7b1a61fd-59de-400e-939e-76c8ba818320-S39601/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/06c67613-dd7b-44e0-aaae-d1b8049d607b/runs/4560d061-ee53-4845-88ef-9c5c8007e306/testoutput/test-support/jtreg_open_test_hotspot_jtreg_tier1_runtime/tmp -Xbootclasspath/a:. -XX:+UnlockDiagnosticVMOptions -XX:+WhiteBoxAPI -XX:+HandshakeALot -XX:GuaranteedSafepointInterval=10 -XX:ParallelGCThreads=1 -XX:ConcGCThreads=1 -XX:CICompilerCount=2 -XX:+UnlockExperimentalVMOptions -XX:HandshakeTimeout=50 -XX:-CreateCoredumpOnCrash HandshakeTimeoutTest$Test Host: [timeout occurred during error reporting in step "printing summary machine and OS info"] after 30 s. Time: Thu Sep 4 11:36:15 2025 UTC elapsed time: 30.496895 seconds (0d 0h 0m 30s) --------------- T H R E A D --------------- Current thread (0x0000ffffa81f0a60): JavaThread "C2 CompilerThread0" daemon [_thread_in_vm, id=505401, stack(0x0000ffff771ae000,0x0000ffff773ac000) (2040K)] Stack: [0x0000ffff771ae000,0x0000ffff773ac000], sp=0x0000ffff773a83d0, free space=2024k Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code) C [libc.so.6+0xe708c] mprotect+0xc [timeout occurred during error reporting in step "printing native stack (with source info)"] after 30 s. [timeout occurred during error reporting in step "retry printing native stack (no source info)"] after 90 s. siginfo: si_signo: 4 (SIGILL), si_code: -6 (SI_TKILL), si_pid: 505380 (current process), si_uid: 10670
04-09-2025