The following test failed in the JDK16 CI:
runtime/ReservedStack/ReservedStackTestCompiler.java
Here's a snippet from the log file:
#section:main
----------messages:(5/622)----------
command: main -XX:-TieredCompilation -XX:-Inline -XX:CompileCommand=exclude,java/util/concurrent/locks/AbstractOwnableSynchronizer.setExclusiveOwnerThread ReservedStackTest
reason: User specified action: run main/othervm -XX:-TieredCompilation -XX:-Inline -XX:CompileCommand=exclude,java/util/concurrent/locks/AbstractOwnableSynchronizer.setExclusiveOwnerThread ReservedStackTest
Mode: othervm [/othervm specified]
Additional options from @modules: --add-modules java.base --add-exports java.base/jdk.internal.misc=ALL-UNNAMED --add-exports java.base/jdk.internal.vm.annotation=ALL-UNNAMED
elapsed time (seconds): 16.907
----------configuration:(5/193)----------
Boot Layer
add modules: java.base
add exports: java.base/jdk.internal.misc ALL-UNNAMED
java.base/jdk.internal.vm.annotation ALL-UNNAMED
----------System.out:(62/3935)----------
CompileCommand: exclude java/util/concurrent/locks/AbstractOwnableSynchronizer.setExclusiveOwnerThread
Command line: [/scratch/opt/mach5/mesos/work_dir/jib-master/install/jdk-16+25-1586/linux-aarch64-debug.jdk/jdk-16/fastdebug/bin/java -cp /scratch/opt/mach5/mesos/work_dir/slaves/47535081-0322-4d83-bb78-f7e11abb86d0-S47885/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/2d9383f7-be9a-46ca-bd9e-a682713fb404/runs/711ce683-d382-44e6-9de8-416483e6778b/testoutput/test-support/jtreg_open_test_hotspot_jtreg_hotspot_tier2_runtime/classes/0/runtime/ReservedStack/ReservedStackTestCompiler.d:/scratch/opt/mach5/mesos/work_dir/jib-master/install/jdk-16+25-1586/src.full/open/test/hotspot/jtreg/runtime/ReservedStack:/scratch/opt/mach5/mesos/work_dir/slaves/47535081-0322-4d83-bb78-f7e11abb86d0-S47885/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/2d9383f7-be9a-46ca-bd9e-a682713fb404/runs/711ce683-d382-44e6-9de8-416483e6778b/testoutput/test-support/jtreg_open_test_hotspot_jtreg_hotspot_tier2_runtime/classes/0/test/lib:/scratch/opt/mach5/mesos/work_dir/jib-master/install/jdk-16+25-1586/src.full/open/test/lib:/scratch/opt/mach5/mesos/work_dir/jib-master/install/jtreg/5.1/b01/bundles/jtreg_bin-5.1.zip/jtreg/lib/javatest.jar:/scratch/opt/mach5/mesos/work_dir/jib-master/install/jtreg/5.1/b01/bundles/jtreg_bin-5.1.zip/jtreg/lib/jtreg.jar -XX:StackReservedPages=1 -version ]
[2020-11-13T19:11:40.898003850Z] Gathering output for process 32117
StackReservedPages=1 log: [java version "16-ea" 2021-03-16
Java(TM) SE Runtime Environment (fastdebug build 16-ea+25-1586)
Java HotSpot(TM) 64-Bit Server VM (fastdebug build 16-ea+25-1586, mixed mode)
]
[2020-11-13T19:11:41.134126825Z] Waiting for completion for process 32117
[2020-11-13T19:11:41.134535725Z] Waiting for completion finished for process 32117
PASSED
PASSED
PASSED
PASSED
PASSED
PASSED
PASSED
PASSED
PASSED
PASSED
PASSED
PASSED
PASSED
PASSED
PASSED
PASSED
PASSED
PASSED
PASSED
PASSED
PASSED
PASSED
PASSED
PASSED
PASSED
PASSED
PASSED
PASSED
PASSED
PASSED
PASSED
PASSED
# To suppress the following error report, specify this argument
# after -XX: or in .hotspotrc: SuppressErrorAt=/frame_aarch64.cpp:326
#
# A fatal error has been detected by the Java Runtime Environment:
#
# Internal Error (/opt/mach5/mesos/work_dir/slaves/47535081-0322-4d83-bb78-f7e11abb86d0-S45708/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/fee1c1bd-3152-42f9-ad8c-fc28266cc5ff/runs/01291963-05c7-4ec1-8b60-6f112a23df10/workspace/open/src/hotspot/cpu/aarch64/frame_aarch64.cpp:326), pid=32094, tid=32196
# assert(sp() <= (intptr_t*) result) failed: monitor end should be above the stack pointer
#
# JRE version: Java(TM) SE Runtime Environment (16.0+25) (fastdebug build 16-ea+25-1586)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (fastdebug 16-ea+25-1586, mixed mode, compressed oops, g1 gc, linux-aarch64)
# Problematic frame:
# V [libjvm.so+0xb33508] frame::interpreter_frame_monitor_end() const+0x68
#
# Core dump will be written. Default location: Core dumps may be processed with "/opt/core.sh %p" (or dumping to /scratch/opt/mach5/mesos/work_dir/slaves/47535081-0322-4d83-bb78-f7e11abb86d0-S47885/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/2d9383f7-be9a-46ca-bd9e-a682713fb404/runs/711ce683-d382-44e6-9de8-416483e6778b/testoutput/test-support/jtreg_open_test_hotspot_jtreg_hotspot_tier2_runtime/scratch/2/core.32094)
#
# An error report file with more information is saved as:
# /scratch/opt/mach5/mesos/work_dir/slaves/47535081-0322-4d83-bb78-f7e11abb86d0-S47885/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/2d9383f7-be9a-46ca-bd9e-a682713fb404/runs/711ce683-d382-44e6-9de8-416483e6778b/testoutput/test-support/jtreg_open_test_hotspot_jtreg_hotspot_tier2_runtime/scratch/2/hs_err_pid32094.log
#
# If you would like to submit a bug report, please visit:
# https://bugreport.java.com/bugreport/crash.jsp
#
----------System.err:(33/5874)----------
Java HotSpot(TM) 64-Bit Server VM warning: Potentially dangerous stack overflow in ReservedStackAccess annotated method java.util.concurrent.locks.ReentrantLock$Sync.lock()V [1]
Java HotSpot(TM) 64-Bit Server VM warning: Potentially dangerous stack overflow in ReservedStackAccess annotated method java.util.concurrent.locks.ReentrantLock$Sync.lock()V [1]
Java HotSpot(TM) 64-Bit Server VM warning: Potentially dangerous stack overflow in ReservedStackAccess annotated method java.util.concurrent.locks.ReentrantLock$Sync.lock()V [1]
Java HotSpot(TM) 64-Bit Server VM warning: Potentially dangerous stack overflow in ReservedStackAccess annotated method java.util.concurrent.locks.ReentrantLock$Sync.lock()V [1]
Java HotSpot(TM) 64-Bit Server VM warning: Potentially dangerous stack overflow in ReservedStackAccess annotated method java.util.concurrent.locks.ReentrantLock$Sync.lock()V [1]
Java HotSpot(TM) 64-Bit Server VM warning: Potentially dangerous stack overflow in ReservedStackAccess annotated method java.util.concurrent.locks.ReentrantLock$Sync.lock()V [1]
Java HotSpot(TM) 64-Bit Server VM warning: Potentially dangerous stack overflow in ReservedStackAccess annotated method java.util.concurrent.locks.ReentrantLock$Sync.lock()V [1]
Java HotSpot(TM) 64-Bit Server VM warning: Potentially dangerous stack overflow in ReservedStackAccess annotated method java.util.concurrent.locks.ReentrantLock$Sync.lock()V [1]
Java HotSpot(TM) 64-Bit Server VM warning: Potentially dangerous stack overflow in ReservedStackAccess annotated method java.util.concurrent.locks.ReentrantLock$Sync.lock()V [1]
Java HotSpot(TM) 64-Bit Server VM warning: Potentially dangerous stack overflow in ReservedStackAccess annotated method java.util.concurrent.locks.ReentrantLock$Sync.lock()V [1]
Java HotSpot(TM) 64-Bit Server VM warning: Potentially dangerous stack overflow in ReservedStackAccess annotated method java.util.concurrent.locks.ReentrantLock$Sync.lock()V [1]
Java HotSpot(TM) 64-Bit Server VM warning: Potentially dangerous stack overflow in ReservedStackAccess annotated method java.util.concurrent.locks.ReentrantLock$Sync.lock()V [1]
Java HotSpot(TM) 64-Bit Server VM warning: Potentially dangerous stack overflow in ReservedStackAccess annotated method java.util.concurrent.locks.ReentrantLock$Sync.lock()V [1]
Java HotSpot(TM) 64-Bit Server VM warning: Potentially dangerous stack overflow in ReservedStackAccess annotated method java.util.concurrent.locks.ReentrantLock$Sync.lock()V [1]
Java HotSpot(TM) 64-Bit Server VM warning: Potentially dangerous stack overflow in ReservedStackAccess annotated method java.util.concurrent.locks.ReentrantLock$Sync.lock()V [1]
Java HotSpot(TM) 64-Bit Server VM warning: Potentially dangerous stack overflow in ReservedStackAccess annotated method java.util.concurrent.locks.ReentrantLock$Sync.lock()V [1]
Java HotSpot(TM) 64-Bit Server VM warning: Potentially dangerous stack overflow in ReservedStackAccess annotated method java.util.concurrent.locks.ReentrantLock$Sync.lock()V [1]
Java HotSpot(TM) 64-Bit Server VM warning: Potentially dangerous stack overflow in ReservedStackAccess annotated method java.util.concurrent.locks.ReentrantLock$Sync.lock()V [1]
Java HotSpot(TM) 64-Bit Server VM warning: Potentially dangerous stack overflow in ReservedStackAccess annotated method java.util.concurrent.locks.ReentrantLock$Sync.lock()V [1]
Java HotSpot(TM) 64-Bit Server VM warning: Potentially dangerous stack overflow in ReservedStackAccess annotated method java.util.concurrent.locks.ReentrantLock$Sync.lock()V [1]
Java HotSpot(TM) 64-Bit Server VM warning: Potentially dangerous stack overflow in ReservedStackAccess annotated method java.util.concurrent.locks.ReentrantLock$Sync.lock()V [1]
Java HotSpot(TM) 64-Bit Server VM warning: Potentially dangerous stack overflow in ReservedStackAccess annotated method java.util.concurrent.locks.ReentrantLock$Sync.lock()V [1]
Java HotSpot(TM) 64-Bit Server VM warning: Potentially dangerous stack overflow in ReservedStackAccess annotated method java.util.concurrent.locks.ReentrantLock$Sync.lock()V [1]
Java HotSpot(TM) 64-Bit Server VM warning: Potentially dangerous stack overflow in ReservedStackAccess annotated method java.util.concurrent.locks.ReentrantLock$Sync.lock()V [1]
Java HotSpot(TM) 64-Bit Server VM warning: Potentially dangerous stack overflow in ReservedStackAccess annotated method java.util.concurrent.locks.ReentrantLock$Sync.lock()V [1]
Java HotSpot(TM) 64-Bit Server VM warning: Potentially dangerous stack overflow in ReservedStackAccess annotated method java.util.concurrent.locks.ReentrantLock$Sync.lock()V [1]
Java HotSpot(TM) 64-Bit Server VM warning: Potentially dangerous stack overflow in ReservedStackAccess annotated method java.util.concurrent.locks.ReentrantLock$Sync.lock()V [1]
Java HotSpot(TM) 64-Bit Server VM warning: Potentially dangerous stack overflow in ReservedStackAccess annotated method java.util.concurrent.locks.ReentrantLock$Sync.lock()V [1]
Java HotSpot(TM) 64-Bit Server VM warning: Potentially dangerous stack overflow in ReservedStackAccess annotated method java.util.concurrent.locks.ReentrantLock$Sync.lock()V [1]
Java HotSpot(TM) 64-Bit Server VM warning: Potentially dangerous stack overflow in ReservedStackAccess annotated method java.util.concurrent.locks.ReentrantLock$Sync.lock()V [1]
Java HotSpot(TM) 64-Bit Server VM warning: Potentially dangerous stack overflow in ReservedStackAccess annotated method java.util.concurrent.locks.ReentrantLock$Sync.lock()V [1]
Java HotSpot(TM) 64-Bit Server VM warning: Potentially dangerous stack overflow in ReservedStackAccess annotated method java.util.concurrent.locks.ReentrantLock$Sync.lock()V [1]
Java HotSpot(TM) 64-Bit Server VM warning: Potentially dangerous stack overflow in ReservedStackAccess annotated method java.util.concurrent.locks.ReentrantLock$Sync.lock()V [1]
----------rerun:(40/7723)*----------
Here's snippets from the hs_err_pid file:
# Internal Error (/opt/mach5/mesos/work_dir/slaves/47535081-0322-4d83-bb78-f7e11abb86d0-S45708/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/fee1c1bd-3152-42f9-ad8c-fc28266cc5ff/runs/01291963-05c7-4ec1-8b60-6f112a23df10/workspace/open/src/hotspot/cpu/aarch64/frame_aarch64.cpp:326), pid=32094, tid=32196
# assert(sp() <= (intptr_t*) result) failed: monitor end should be above the stack pointer
#
# JRE version: Java(TM) SE Runtime Environment (16.0+25) (fastdebug build 16-ea+25-1586)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (fastdebug 16-ea+25-1586, mixed mode, compressed oops, g1 gc, linux-aarch64)
# Problematic frame:
# V [libjvm.so+0xb33508] frame::interpreter_frame_monitor_end() const+0x68
--------------- T H R E A D ---------------
Current thread (0x0000ffff84007870): GCTaskThread "GC Thread#2" [stack: 0x0000ffff8c720000,0x0000ffff8c920000] [id=32196]
Stack: [0x0000ffff8c720000,0x0000ffff8c920000], sp=0x0000ffff8c91d810, free space=2038k
Native frames: (J=compiled Java code, A=aot compiled Java code, j=interpreted, Vv=VM code, C=native code)
V [libjvm.so+0xb33508] frame::interpreter_frame_monitor_end() const+0x68
V [libjvm.so+0xb2fecc] frame::oops_interpreted_do(OopClosure*, RegisterMap const*, bool) const+0x2ec
V [libjvm.so+0x15f96a8] JavaThread::oops_do_frames(OopClosure*, CodeBlobClosure*) [clone .part.0]+0x88
V [libjvm.so+0x15fc648] Thread::oops_do(OopClosure*, CodeBlobClosure*)+0xc4
V [libjvm.so+0x1605908] Threads::possibly_parallel_oops_do(bool, OopClosure*, CodeBlobClosure*)+0x1e4
V [libjvm.so+0xc3fc90] G1RootProcessor::process_java_roots(G1RootClosures*, G1GCPhaseTimes*, unsigned int)+0x80
V [libjvm.so+0xc405b0] G1RootProcessor::evacuate_roots(G1ParScanThreadState*, unsigned int)+0x70
V [libjvm.so+0xb81744] G1EvacuateRegionsTask::scan_roots(G1ParScanThreadState*, unsigned int)+0x24
V [libjvm.so+0xb823b0] G1EvacuateRegionsBaseTask::work(unsigned int)+0x60
V [libjvm.so+0x1752aa8] GangWorker::run_task(WorkData)+0x98
V [libjvm.so+0x1752bf4] GangWorker::loop()+0x44
V [libjvm.so+0x16077c8] Thread::call_run()+0xf8
V [libjvm.so+0x1337980] thread_native_entry(Thread*)+0x120
C [libpthread.so.0+0x7d40] start_thread+0xb4
JavaThread 0x0000ffff540d8ee0 (nid = 32194) was being processed
Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
j java.util.concurrent.locks.ReentrantLock$Sync.lock()V+12 java.base@16-ea
j java.util.concurrent.locks.ReentrantLock.lock()V+4 java.base@16-ea
j ReservedStackTest$ReentrantLockTest.lockAndCall(I)V+18
j ReservedStackTest$ReentrantLockTest.lockAndCall(I)V+25
j ReservedStackTest$ReentrantLockTest.lockAndCall(I)V+25
<snip a bunch of frame repeats>
j ReservedStackTest$ReentrantLockTest.lockAndCall(I)V+25
j ReservedStackTest$ReentrantLockTest.lockAndCall(I)V+25
j ReservedStackTest$ReentrantLockTest.run()V+2
J 113 c2 ReservedStackTest$RunWithSOEContext.recursiveCall()V (65 bytes) @ 0x0000ffffa5a2c2d8 [0x0000ffffa5a2c240+0x0000000000000098]
J 113 c2 ReservedStackTest$RunWithSOEContext.recursiveCall()V (65 bytes) @ 0x0000ffffa5a2c288 [0x0000ffffa5a2c240+0x0000000000000048]
J 113 c2 ReservedStackTest$RunWithSOEContext.recursiveCall()V (65 bytes) @ 0x0000ffffa5a2c288 [0x0000ffffa5a2c240+0x0000000000000048]
J 113 c2 ReservedStackTest$RunWithSOEContext.recursiveCall()V (65 bytes) @ 0x0000ffffa5a2c288 [0x0000ffffa5a2c240+0x0000000000000048]
<snip thousands? of frame repeats>
J 113 c2 ReservedStackTest$RunWithSOEContext.recursiveCall()V (65 bytes) @ 0x0000ffffa5a2c288 [0x0000ffffa5a2c240+0x0000000000000048]
J 113 c2 ReservedStackTest$RunWithSOEContext.recursiveCall()V (65 bytes) @ 0x0000ffffa5a2c288 [0x0000ffffa5a2c240+0x0000000000000048]
J 113 c2 ReservedStackTest$RunWithSOEContext.recursiveCall()V (65 bytes) @ 0x0000ffffa5a2c288 [0x0000ffffa5a2c240+0x0000000000000048]
J 113 c2 ReservedStackTest$RunWithSOEContext.recursiveCall()V (65 bytes) @ 0x0000ffffa5a2c288 [0x0000ffffa5a2c240+0x0000000000000048]
J 113 c2 ReservedStackTest$RunWithSOEContext.recursiveCall()V (65 bytes) @ 0x0000ffffa5a2c288 [0x0000ffffa5a2c240+0x0000000000000048]
J 113 c2 ReservedStackTest$RunWithSOEContext.recursiveCall()V (65 bytes) @ 0x0000ffffa5a2c288 [0x0000ffffa5a2c240+0x0000000000000048]
j ReservedStackTest$RunWithSOEContext.run()V+21
j java.lang.Thread.run()V+11 java.base@16-ea
v ~StubRoutines::call_stub
Starting this bug at P3 since this is a Tier2 test failure and
starting in hotspot/runtime since this is a Runtime test.
The failing build-ID, jdk-16+25-1586-tier2, only contains
test fixes in an unrelated area so I'm labeling this failure
as intermittent.