The failure

Robbin Ehn robbin.ehn at oracle.com
Tue Oct 23 14:38:30 UTC 2018


Hi,

On 10/23/18 10:34 AM, David Holmes wrote:
> Hi Serguei,
> 
> The VMThread is executing VM_HandshakeAllThreads which is not a safepoint 
> operation. There's no real way to tell from the stacks what it's stuck on.

I cannot find a thread that is not considered safepoint safe or is_ext_suspended 
(thread 146). So the handshake should go through. The handshake will log a 
warning after a while, is there such warning from the handshake operation?

There are several threads competing with e.g. Threads_lock, and threads waiting 
for GC and several other VM ops, could it just be really slow?

/Robbin

> 
> David
> 
> On 23/10/2018 5:58 PM, serguei.spitsyn at oracle.com wrote:
>> Hi David,
>>
>> You are right, thanks.
>> It means, this deadlock needs more analysis.
>> For completeness, the stack traces are in attachments.
>>
>> Thanks,
>> Serguei
>>
>>
>> On 10/23/18 00:43, David Holmes wrote:
>>> Hi Serguei,
>>>
>>> The JvmtiThreadState_lock is always acquired with safepoint checks enabled, 
>>> so all JavaThreads blocked trying to acquire it will be _thread_blocked and 
>>> so safepoint-safe and so won't be holding up the safepoint.
>>>
>>> David
>>>
>>> On 23/10/2018 5:21 PM, serguei.spitsyn at oracle.com wrote:
>>>> Hi,
>>>>
>>>> I've added the seviceability-dev mailing list.
>>>> It can be interesting for the SVC folks. :)
>>>>
>>>>
>>>> On 10/22/18 22:14, Leonid Mesnik wrote:
>>>>> Hi
>>>>>
>>>>> Seems last version also crashes with 2 other different symptoms.
>>>>> http://java.se.oracle.com:10065/mdash/jobs/lmesnik-ks8-20181021-0638-7157/results?search=status%3Afailed+AND+-state%3Ainvalid 
>>>>> <http://java.se.oracle.com:10065/mdash/jobs/lmesnik-ks8-20181021-0638-7157/results?search=status:failed+AND+-state:invalid> 
>>>>>
>>>>>
>>>>>
>>>>> Also it might hangs with  stack attached.  Seems that test might be blocked 
>>>>> because it invoke 2 jvmti methods. Can jvmti agent invoke jvmti methods 
>>>>> from different threads?
>>>>
>>>> Yes, in general.
>>>> However, you have to be careful when using debugging features.
>>>> Below, one thread is enabling single stepping while another thread is being 
>>>> suspended.
>>>> Both are blocked at a safepoint which is Okay in general but not Okay if 
>>>> they hold any lock.
>>>> For instance, the thread #152 is holding the monitor JvmtiThreadState.
>>>>
>>>> Also, I see a couple of more threads that are interesting as well:
>>>>
>>>> Thread 159 (Thread 0x2ae40b78f700 (LWP 27962)):
>>>> #0  0x00002ae3927b5945 in pthread_cond_wait@@GLIBC_2.3.2 () from 
>>>> /lib64/libpthread.so.0
>>>> #1  0x00002ae393ba8d63 in os::PlatformEvent::park 
>>>> (this=this at entry=0x2ae3984c9100) at 
>>>> /scratch/lmesnik/ws/hs-bigapps/open/src/hotspot/os/posix/os_posix.cpp:1897
>>>> #2  0x00002ae393b50920 in ParkCommon (timo=0, ev=0x2ae3984c9100) at 
>>>> /scratch/lmesnik/ws/hs-bigapps/open/src/hotspot/share/runtime/mutex.cpp:399
>>>> #3  Monitor::ILock (this=0x2ae398024f10, Self=0x2ae3984c7800) at 
>>>> /scratch/lmesnik/ws/hs-bigapps/open/src/hotspot/share/runtime/mutex.cpp:461
>>>> #4  0x00002ae393b512c1 in lock (Self=0x2ae3984c7is_ext_suspended800, this=0x2ae398024f10) at 
>>>> /scratch/lmesnik/ws/hs-bigapps/open/src/hotspot/share/runtime/mutex.cpp:910
>>>> #5  Monitor::lock (this=this at entry=0x2ae398024f10) at 
>>>> /scratch/lmesnik/ws/hs-bigapps/open/src/hotspot/share/runtime/mutex.cpp:919
>>>> #6  0x00002ae39350510c in MutexLocker (mutex=0x2ae398024f10, this=<synthetic 
>>>> pointer>) at 
>>>> /scratch/lmesnik/ws/hs-bigapps/open/src/hotspot/share/runtime/mutexLocker.hpp:182 
>>>>
>>>> #7  ciEnv::cache_jvmti_state (this=this at entry=0x2ae40b78eb30) at 
>>>> /scratch/lmesnik/ws/hs-bigapps/open/src/hotspot/share/ci/ciEnv.cpp:229
>>>> #8  0x00002ae3935d3294 in CompileBroker::invoke_compiler_on_method 
>>>> (task=task at entry=0x2ae48800ff40) at 
>>>> /scratch/lmesnik/ws/hs-bigapps/open/src/hotspot/share/compiler/compileBroker.cpp:2084 
>>>>
>>>> #9  0x00002ae3935d4f48 in CompileBroker::compiler_thread_loop () at 
>>>> /scratch/lmesnik/ws/hs-bigapps/open/src/hotspot/share/compiler/compileBroker.cpp:1798 
>>>>
>>>> #10 0x00002ae393d7338a in JavaThread::thread_main_inner 
>>>> (this=this at entry=0x2ae3984c7800) at 
>>>> /scratch/lmesnik/ws/hs-bigapps/open/src/hotspot/share/runtime/thread.cpp:1795
>>>> #11 0x00002ae393d736c6 in JavaThread::run (this=0x2ae3984c7800) at 
>>>> /scratch/lmesnik/ws/hs-bigapps/open/src/hotspot/share/runtime/thread.cpp:1775
>>>> #12 0x00002ae393ba0070 in thread_native_entry (thread=0x2ae3984c7800) at 
>>>> /scratch/lmesnik/ws/hs-bigapps/open/src/hotspot/os/linux/os_linux.cpp:698
>>>> #13 0x00002ae3927b1e25 in start_thread () from /lib64/libpthread.so.0
>>>> #14 0x00002ae392cc234d in clone () from /lib64/libc.so.6
>>>>
>>>> Thread 158 (Thread 0x2ae40b890700 (LWP 27963)):
>>>> #0  0x00002ae3927b5945 in pthread_cond_wait@@GLIBC_2.3.2 () from 
>>>> /lib64/libpthread.so.0
>>>> #1  0x00002ae393ba8d63 in os::PlatformEvent::park 
>>>> (this=this at entry=0x2ae3984cbb00) at 
>>>> /scratch/lmesnik/ws/hs-bigapps/open/src/hotspot/os/posix/os_posix.cpp:1897
>>>> #2  0x00002ae393b50920 in ParkCommon (timo=0, ev=0x2ae3984cbb00) at 
>>>> /scratch/lmesnik/ws/hs-bigapps/open/src/hotspot/share/runtime/mutex.cpp:399
>>>> #3  Monitor::ILock (this=0x2ae398024f10, Self=0x2ae3984ca800) at 
>>>> /scratch/lmesnik/ws/hs-bigapps/open/src/hotspot/share/runtime/mutex.cpp:461
>>>> #4  0x00002ae393b512c1 in lock (Self=0x2ae3984ca800, this=0x2ae398024f10) at 
>>>> /scratch/lmesnik/ws/hs-bigapps/open/src/hotspot/share/runtime/mutex.cpp:910
>>>> #5  Monitor::lock (this=this at entry=0x2ae398024f10) at 
>>>> /scratch/lmesnik/ws/hs-bigapps/open/src/hotspot/share/runtime/mutex.cpp:919
>>>> #6  0x00002ae39350510c in MutexLocker (mutex=0x2ae398024f10, this=<synthetic 
>>>> pointer>) at 
>>>> /scratch/lmesnik/ws/hs-bigapps/open/src/hotspot/share/runtime/mutexLocker.hpp:182 
>>>>
>>>> #7  ciEnv::cache_jvmti_state (this=this at entry=0x2ae40b88fb30) at 
>>>> /scratch/lmesnik/ws/hs-bigapps/open/src/hotspot/share/ci/ciEnv.cpp:229
>>>> #8  0x00002ae3935d3294 in CompileBroker::invoke_compiler_on_method 
>>>> (task=task at entry=0x2ae49c00a670) at 
>>>> /scratch/lmesnik/ws/hs-bigapps/open/src/hotspot/share/compiler/compileBroker.cpp:2084 
>>>>
>>>> #9  0x00002ae3935d4f48 in CompileBroker::compiler_thread_loop () at 
>>>> /scratch/lmesnik/ws/hs-bigapps/open/src/hotspot/share/compiler/compileBroker.cpp:1798 
>>>>
>>>> #10 0x00002ae393d7338a in JavaThread::thread_main_inner 
>>>> (this=this at entry=0x2ae3984ca800) at 
>>>> /scratch/lmesnik/ws/hs-bigapps/open/src/hotspot/share/runtime/thread.cpp:1795
>>>> #11 0x00002ae393d736c6 in JavaThread::run (this=0x2ae3984ca800) at 
>>>> /scratch/lmesnik/ws/hs-bigapps/open/src/hotspot/share/runtime/thread.cpp:1775
>>>> #12 0x00002ae393ba0070 in thread_native_entry (thread=0x2ae3984ca800) at 
>>>> /scratch/lmesnik/ws/hs-bigapps/open/src/hotspot/os/linux/os_linux.cpp:698
>>>> #13 0x00002ae3927b1e25 in start_thread () from /lib64/libpthread.so.0
>>>> #14 0x00002ae392cc234d in clone () from /lib64/libc.so.6
>>>>
>>>> Thread 51 (Thread 0x2ae49549b700 (LWP 29678)):
>>>> #0  0x00002ae3927b5945 in pthread_cond_wait@@GLIBC_2.3.2 () from 
>>>> /lib64/libpthread.so.0
>>>> #1  0x00002ae393ba8d63 in os::PlatformEvent::park 
>>>> (this=this at entry=0x2ae460061c00) at 
>>>> /scratch/lmesnik/ws/hs-bigapps/open/src/hotspot/os/posix/os_posix.cpp:1897
>>>> #2  0x00002ae393b50920 in ParkCommon (timo=0, ev=0x2ae460061c00) at 
>>>> /scratch/lmesnik/ws/hs-bigapps/open/src/hotspot/share/runtime/mutex.cpp:399
>>>> #3  Monitor::ILock (this=0x2ae398024f10, Self=0x2ae4600c2800) at 
>>>> /scratch/lmesnik/ws/hs-bigapps/open/src/hotspot/share/runtime/mutex.cpp:461
>>>> #4  0x00002ae393b512c1 in lock (Self=0x2ae4600c2800, this=0x2ae398024f10) at 
>>>> /scratch/lmesnik/ws/hs-bigapps/open/src/hotspot/share/runtime/mutex.cpp:910
>>>> #5  Monitor::lock (this=this at entry=0x2ae398024f10) at 
>>>> /scratch/lmesnik/ws/hs-bigapps/open/src/hotspot/share/runtime/mutex.cpp:919
>>>> #6  0x00002ae393999682 in MutexLocker (mutex=0x2ae398024f10, this=<synthetic 
>>>> pointer>) at 
>>>> /scratch/lmesnik/ws/hs-bigapps/open/src/hotspot/share/runtime/mutexLocker.hpp:182 
>>>>
>>>> #7  thread_started (thread=0x2ae4600c2800) at 
>>>> /scratch/lmesnik/ws/hs-bigapps/open/src/hotspot/share/prims/jvmtiEventController.cpp:668 
>>>>
>>>> #8  JvmtiEventController::thread_started (thread=0x2ae4600c2800) at 
>>>> /scratch/lmesnik/ws/hs-bigapps/open/src/hotspot/share/prims/jvmtiEventController.cpp:1027 
>>>>
>>>> #9  0x00002ae39399f3a0 in JvmtiExport::post_thread_start 
>>>> (thread=thread at entry=0x2ae4600c2800) at 
>>>> /scratch/lmesnik/ws/hs-bigapps/open/src/hotspot/share/prims/jvmtiExport.cpp:1395 
>>>>
>>>> #10 0x00002ae393d737d8 in JavaThread::run (this=0x2ae4600c2800) at 
>>>> /scratch/lmesnik/ws/hs-bigapps/open/src/hotspot/share/runtime/thread.cpp:1764
>>>> #11 0x00002ae393ba0070 in thread_native_entry (thread=0x2ae4600c2800) at 
>>>> /scratch/lmesnik/ws/hs-bigapps/open/src/hotspot/os/linux/os_linux.cpp:698
>>>> #12 0x00002ae3927b1e25 in start_thread () from /lib64/libpthread.so.0
>>>> #13 0x00002ae392cc234d in clone () from /lib64/libc.so.6
>>>>
>>>>
>>>> These two thread are blocked on the monitor JvmtiThreadState_lock in the 
>>>> function ciEnv::cache_jvmti_state().
>>>> Also, there are many threads (like #51) that are executing 
>>>> JvmtiExport::post_thread_start and blocked on the same monitor.
>>>>
>>>>
>>>> Now, the question is why this safepoint can not start?
>>>> What thread is blocking it? Or in reverse, what thread this safepoint is 
>>>> waiting for?
>>>>
>>>> I think, this safepoint operation is waiting for all threads that are 
>>>> blocked on the JvmtiThreadState_lock.
>>>>
>>>> Conclusion:
>>>>
>>>> The deadlock is:
>>>>
>>>> Thread #152:
>>>>    - grabbed the monitor JvmtiThreadState_lock
>>>>    - blocked in the VM_GetCurrentLocation in the function 
>>>> JvmtiEnvThreadState::reset_current_location()
>>>>
>>>> Many other threads:
>>>>    - blocked on the monitor JvmtiThreadState_lock
>>>>    - can not reach the blocked at a safepoint state (all threads have to 
>>>> reach this state for this safepoint to happen)
>>>>
>>>> It seems to me, this is a bug which has to be filed.
>>>>
>>>> My guess is that this will stop to reproduce after if you turn off the 
>>>> single stepping for thread #152.
>>>> Please, let me know about the results.
>>>>
>>>>
>>>>> Assuming that crashes look like VM bugs I think it make sense to integrate 
>>>>> jvmti changes but *don't* enabled jvmti module by default.
>>>>
>>>> This one is a deadlock.
>>>> However, the root cause is a race condition that can potentially result in 
>>>> both deadlocks and crashes.
>>>> So, I'm curious if you observed crashes as well.
>>>>
>>>>
>>>>> And add to more tests with jvmti enabled.
>>>>> So anyone could easily run them to reproduce crashes.  This test would be 
>>>>> out of CI to don't introduce any bugs. Does it make sense?
>>>>>
>>>>> Consider hang - I think that it might be product bug since I don't see any 
>>>>> locking on my monitors. But I am not sure. Is it possible that any my code 
>>>>> jvmti agent prevent VM to get into safepoint?
>>>>> Could we discuss it tomorrow or his week when you have a time?
>>>>
>>>> Yes, of course.
>>>> Let's find some time tomorrow.
>>>>
>>>>
>>>>> Any suggestion how to diagnose deadlock would be great.
>>>>
>>>> Analysis of stack traces is needed.
>>>> It is non-trivial in this particular case as there are so many threads 
>>>> executed at the same time.
>>>>
>>>>
>>>>> Part of stack trace with 2 my threads only:
>>>>>
>>>>> Thread 136 (Thread 0x2ae494100700 (LWP 28023)):
>>>>> #0  0x00002ae3927b5945 in pthread_cond_wait@@GLIBC_2.3.2 () from 
>>>>> /lib64/libpthread.so.0
>>>>> #1  0x00002ae393ba8d63 in os::PlatformEvent::park 
>>>>> (this=this at entry=0x2ae454005800) at 
>>>>> /scratch/lmesnik/ws/hs-bigapps/open/src/hotspot/os/posix/os_posix.cpp:1897
>>>>> #2  0x00002ae393b50cf8 in ParkCommon (timo=0, ev=0x2ae454005800) at 
>>>>> /scratch/lmesnik/ws/hs-bigapps/open/src/hotspot/share/runtime/mutex.cpp:399
>>>>> #3  Monitor::IWait (this=this at entry=0x2ae398023c10, 
>>>>> Self=Self at entry=0x2ae454004800, timo=timo at entry=0) at 
>>>>> /scratch/lmesnik/ws/hs-bigapps/open/src/hotspot/share/runtime/mutex.cpp:76\
>>>>> 8
>>>>> #4  0x00002ae393b51f2e in Monitor::wait (this=this at entry=0x2ae398023c10, 
>>>>> no_safepoint_check=<optimized out>, timeout=timeout at entry=0, 
>>>>> as_suspend_equivalent=as_suspend_equivalent at en\
>>>>> try=false) at 
>>>>> /scratch/lmesnik/ws/hs-bigapps/open/src/hotspot/share/runtime/mutex.cpp:1106
>>>>> #5  0x00002ae393de7867 in VMThread::execute (op=op at entry=0x2ae4940ffb10) at 
>>>>> /scratch/lmesnik/ws/hs-bigapps/open/src/hotspot/share/runtime/vmThread.cpp:657
>>>>> #6  0x00002ae393d6a3bd in JavaThread::java_suspend 
>>>>> (this=this at entry=0x2ae3985f2000) at 
>>>>> /scratch/lmesnik/ws/hs-bigapps/open/src/hotspot/share/runtime/thread.cpp:2321
>>>>> #7  0x00002ae3939ad7e1 in JvmtiSuspendControl::suspend 
>>>>> (java_thread=java_thread at entry=0x2ae3985f2000) at 
>>>>> /scratch/lmesnik/ws/hs-bigapps/open/src/hotspot/share/prims/jvmtiImpl.cpp:8\
>>>>> 47
>>>>> #8  0x00002ae3939887ae in JvmtiEnv::SuspendThread 
>>>>> (this=this at entry=0x2ae39801b270, java_thread=0x2ae3985f2000) at 
>>>>> /scratch/lmesnik/ws/hs-bigapps/open/src/hotspot/share/prims/jvmtiE\
>>>>> nv.cpp:955
>>>>> #9  0x00002ae39393a8c6 in jvmti_SuspendThread (env=0x2ae39801b270, 
>>>>> thread=0x2ae49929fdf8) at 
>>>>> /scratch/lmesnik/ws/hs-bigapps/build/linux-x64/hotspot/variant-server/gensrc/jvmtifiles\ 
>>>>>
>>>>> /jvmtiEnter.cpp:527
>>>>> #10 0x00002ae394d973ee in agent_sampler (jvmti=0x2ae39801b270, 
>>>>> env=<optimized out>, p=<optimized out>) at 
>>>>> /scratch/lmesnik/ws/hs-bigapps/closed/test/hotspot/jtreg/applications/kitc\
>>>>> hensink/process/stress/modules/libJvmtiStressModule.c:274
>>>>> #11 0x00002ae3939ab24d in call_start_function (this=0x2ae454004800) at 
>>>>> /scratch/lmesnik/ws/hs-bigapps/open/src/hotspot/share/prims/jvmtiImpl.cpp:85
>>>>> #12 JvmtiAgentThread::start_function_wrapper (thread=0x2ae454004800, 
>>>>> __the_thread__=<optimized out>) at 
>>>>> /scratch/lmesnik/ws/hs-bigapps/open/src/hotspot/share/prims/jvmtiImpl.cpp:79
>>>>> #13 0x00002ae393d7338a in JavaThread::thread_main_inner 
>>>>> (this=this at entry=0x2ae454004800) at 
>>>>> /scratch/lmesnik/ws/hs-bigapps/open/src/hotspot/share/runtime/thread.cpp:1795
>>>>> #14 0x00002ae393d736c6 in JavaThread::run (this=0x2ae454004800) at 
>>>>> /scratch/lmesnik/ws/hs-bigapps/open/src/hotspot/share/runtime/thread.cpp:1775
>>>>> #15 0x00002ae393ba0070 in thread_native_entry (thread=0x2ae454004800) at 
>>>>> /scratch/lmesnik/ws/hs-bigapps/open/src/hotspot/os/linux/os_linux.cpp:698
>>>>> #16 0x00002ae3927b1e25 in start_thread () from /lib64/libpthread.so.0
>>>>> #17 0x00002ae392cc234d in clone () from /lib64/libc.so.6
>>>>>
>>>>>
>>>>>
>>>>> Thread 152 (Thread 0x2ae427060700 (LWP 27995)):
>>>>> #0  0x00002ae3927b5945 in pthread_cond_wait@@GLIBC_2.3.2 () from 
>>>>> /lib64/libpthread.so.0
>>>>> #1  0x00002ae393ba8d63 in os::PlatformEvent::park 
>>>>> (this=this at entry=0x2ae3985e7400) at 
>>>>> /scratch/lmesnik/ws/hs-bigapps/open/src/hotspot/os/posix/os_posix.cpp:1897
>>>>> #2  0x00002ae393b50cf8 in ParkCommon (timo=0, ev=0x2ae3985e7400) at 
>>>>> /scratch/lmesnik/ws/hs-bigapps/open/src/hotspot/share/runtime/mutex.cpp:399
>>>>> #3  Monitor::IWait (this=this at entry=0x2ae398023c10, 
>>>>> Self=Self at entry=0x2ae3985e6000, timo=timo at entry=0) at 
>>>>> /scratch/lmesnik/ws/hs-bigapps/open/src/hotspot/share/runtime/mutex.cpp:76\
>>>>> 8
>>>>> #4  0x00002ae393b51f2e in Monitor::wait (this=this at entry=0x2ae398023c10, 
>>>>> no_safepoint_check=<optimized out>, timeout=timeout at entry=0, 
>>>>> as_suspend_equivalent=as_suspend_equivalent at en\
>>>>> try=false) at 
>>>>> /scratch/lmesnik/ws/hs-bigapps/open/src/hotspot/share/runtime/mutex.cpp:1106
>>>>> #5  0x00002ae393de7867 in VMThread::execute (op=0x2ae42705f500) at 
>>>>> /scratch/lmesnik/ws/hs-bigapps/open/src/hotspot/share/runtime/vmThread.cpp:657
>>>>> #6  0x00002ae3939965f3 in JvmtiEnvThreadState::reset_current_location 
>>>>> (this=this at entry=0x2ae6bc000d80, 
>>>>> event_type=event_type at entry=JVMTI_EVENT_SINGLE_STEP, enabled=enabled at entry=tr\
>>>>> ue) at 
>>>>> /scratch/lmesnik/ws/hs-bigapps/open/src/hotspot/share/prims/jvmtiEnvThreadState.cpp:312 
>>>>>
>>>>> #7  0x00002ae393997acf in recompute_env_thread_enabled 
>>>>> (state=0x2ae6bc000cd0, ets=0x2ae6bc000d80) at 
>>>>> /scratch/lmesnik/ws/hs-bigapps/open/src/hotspot/share/prims/jvmtiEventControlle\ 
>>>>>
>>>>> r.cpp:490
>>>>> #8  JvmtiEventControllerPrivate::recompute_thread_enabled 
>>>>> (state=state at entry=0x2ae6bc000cd0) at 
>>>>> /scratch/lmesnik/ws/hs-bigapps/open/src/hotspot/share/prims/jvmtiEventController.cpp\ 
>>>>>
>>>>> :523
>>>>> #9  0x00002ae393998168 in JvmtiEventControllerPrivate::recompute_enabled () 
>>>>> at 
>>>>> /scratch/lmesnik/ws/hs-bigapps/open/src/hotspot/share/prims/jvmtiEventController.cpp:598 
>>>>>
>>>>> #10 0x00002ae39399a244 in set_user_enabled (enabled=true, 
>>>>> event_type=JVMTI_EVENT_SINGLE_STEP, thread=0x0, env=0x2ae39801b270) at 
>>>>> /scratch/lmesnik/ws/hs-bigapps/open/src/hotspot/sha\
>>>>> re/prims/jvmtiEventController.cpp:818
>>>>> #11 JvmtiEventController::set_user_enabled (env=0x2ae39801b270, thread=0x0, 
>>>>> event_type=JVMTI_EVENT_SINGLE_STEP, enabled=<optimized out>) at 
>>>>> /scratch/lmesnik/ws/hs-bigapps/open/src/\
>>>>> hotspot/share/prims/jvmtiEventController.cpp:963
>>>>> #12 0x00002ae393987d2d in JvmtiEnv::SetEventNotificationMode 
>>>>> (this=this at entry=0x2ae39801b270, mode=mode at entry=JVMTI_ENABLE, 
>>>>> event_type=event_type at entry=JVMTI_EVENT_SINGLE_STEP, eve\
>>>>> nt_thread=event_thread at entry=0x0) at 
>>>>> /scratch/lmesnik/ws/hs-bigapps/open/src/hotspot/share/prims/jvmtiEnv.cpp:543
>>>>> #13 0x00002ae3939414eb in jvmti_SetEventNotificationMode 
>>>>> (env=0x2ae39801b270, mode=mode at entry=JVMTI_ENABLE, 
>>>>> event_type=event_type at entry=JVMTI_EVENT_SINGLE_STEP, event_thread=event_\
>>>>> thread at entry=0x0) at 
>>>>> /scratch/lmesnik/ws/hs-bigapps/build/linux-x64/hotspot/variant-server/gensrc/jvmtifiles/jvmtiEnter.cpp:5389 
>>>>>
>>>>> #14 0x00002ae394d97989 in enable_events () at 
>>>>> /scratch/lmesnik/ws/hs-bigapps/closed/test/hotspot/jtreg/applications/kitchensink/process/stress/modules/libJvmtiStressModule.c:519 
>>>>>
>>>>> #15 0x00002ae394d98070 in 
>>>>> Java_applications_kitchensink_process_stress_modules_JvmtiStressModule_startIteration 
>>>>> (env=<optimized out>, this=<optimized out>) at /scratch/lmesnik/ws/h\
>>>>> s-bigapps/closed/test/hotspot/jtreg/applications/kitchensink/process/stress/modules/libJvmtiStressModule.c:697 
>>>>>
>>>>> #16 0x00002ae3a43ef257 in ?? ()
>>>>> #17 0x00002ae3a43eede1 in ?? ()
>>>>> #18 0x00002ae42705f878 in ?? ()
>>>>> #19 0x00002ae40ad334e0 in ?? ()
>>>>> #20 0x00002ae42705f8e0 in ?? ()
>>>>> #21 0x00002ae40ad33c68 in ?? ()
>>>>> #22 0x0000000000000000 in ?? ()
>>>>
>>>> Thanks,
>>>> Serguei
>>>>
>>>>>
>>>>>
>>>>>
>>>>> Leonid
>>>>>
>>>>>
>>>>>> On Oct 9, 2018, at 4:52 PM, serguei.spitsyn at oracle.com 
>>>>>> <mailto:serguei.spitsyn at oracle.com> wrote:
>>>>>>
>>>>>> Hi Leonid,
>>>>>>
>>>>>> There is an existing bug:
>>>>>> https://bugs.openjdk.java.net/browse/JDK-8043571
>>>>>>
>>>>>> Thanks,
>>>>>> Serguei
>>>>>>
>>>>>>
>>>>>> On 10/9/18 16:11, Leonid Mesnik wrote:
>>>>>>> Hi
>>>>>>>
>>>>>>> During fixing kitchensink I get
>>>>>>> assert(_cur_stack_depth == count_frames()) failed: cur_stack_depth out of 
>>>>>>> sync
>>>>>>>
>>>>>>> Do you know if i might be bug in my jvmti agent?
>>>>>>>
>>>>>>> Leonid
>>>>>>>
>>>>>>>
>>>>>>> #
>>>>>>> # A fatal error has been detected by the Java Runtime Environment:
>>>>>>> #
>>>>>>> #  Internal Error 
>>>>>>> (/scratch/lmesnik/ws/hs-bigapps/open/src/hotspot/share/prims/jvmtiThreadState.cpp:277), 
>>>>>>> pid=13926, tid=13962
>>>>>>> #  assert(_cur_stack_depth == count_frames()) failed: cur_stack_depth out 
>>>>>>> of sync
>>>>>>> #
>>>>>>> # JRE version: Java(TM) SE Runtime Environment (12.0) (fastdebug build 
>>>>>>> 12-internal+0-2018-10-08-2342517.lmesnik.hs-bigapps)
>>>>>>> # Java VM: Java HotSpot(TM) 64-Bit Server VM (fastdebug 
>>>>>>> 12-internal+0-2018-10-08-2342517.lmesnik.hs-bigapps, mixed mode, tiered, 
>>>>>>> compressed oops, g1 gc, linux-amd64)
>>>>>>> # Core dump will be written. Default location: Core dumps may be 
>>>>>>> processed with "/usr/libexec/abrt-hook-ccpp %s %c %p %u %g %t e %P %I %h" 
>>>>>>> (or dumping to 
>>>>>>> /scratch/lmesnik/ws/hs-bigapps/build/linux-x64/test-support/jtreg_closed_test_hotspot_jtreg_applications_kitchensink_KitchensinkSanity_java/scratch/0/core.13926) 
>>>>>>>
>>>>>>> #
>>>>>>> # If you would like to submit a bug report, please visit:
>>>>>>> # http://bugreport.java.com/bugreport/crash.jsp
>>>>>>> #
>>>>>>>
>>>>>>> ---------------  S U M M A R Y ------------
>>>>>>>
>>>>>>> Command Line: -XX:MaxRAMPercentage=2 -XX:MaxRAMPercentage=50 
>>>>>>> -XX:+CrashOnOutOfMemoryError -Djava.net.preferIPv6Addresses=false 
>>>>>>> -XX:-PrintVMOptions -XX:+DisplayVMOutputToStderr -XX:+UsePerfData 
>>>>>>> -Xlog:gc*,gc+heap=debug:gc.log:uptime,timemillis,level,tags 
>>>>>>> -XX:+DisableExplicitGC -XX:+PrintFlagsFinal -XX:+StartAttachListener 
>>>>>>> -XX:NativeMemoryTracking=detail -XX:+FlightRecorder 
>>>>>>> --add-exports=java.base/java.lang=ALL-UNNAMED 
>>>>>>> --add-opens=java.base/java.lang=ALL-UNNAMED 
>>>>>>> --add-exports=java.xml/com.sun.org.apache.xerces.internal.parsers=ALL-UNNAMED 
>>>>>>> --add-exports=java.xml/com.sun.org.apache.xerces.internal.util=ALL-UNNAMED -Djava.io.tmpdir=/scratch/lmesnik/ws/hs-bigapps/build/linux-x64/test-support/jtreg_closed_test_hotspot_jtreg_applications_kitchensink_KitchensinkSanity_java/scratch/0/java.io.tmpdir 
>>>>>>> -Duser.home=/scratch/lmesnik/ws/hs-bigapps/build/linux-x64/test-support/jtreg_closed_test_hotspot_jtreg_applications_kitchensink_KitchensinkSanity_java/scratch/0/user.home 
>>>>>>> -agentpath:/scratch/lmesnik/ws/hs-bigapps/build/linux-x64/images/test/hotspot/jtreg/native/libJvmtiStressModule.so 
>>>>>>> applications.kitchensink.process.stress.Main 
>>>>>>> /scratch/lmesnik/ws/hs-bigapps/build/linux-x64/test-support/jtreg_closed_test_hotspot_jtreg_applications_kitchensink_KitchensinkSanity_java/scratch/0/kitchensink.final.properties 
>>>>>>>
>>>>>>>
>>>>>>> Host: scaaa118.us.oracle.com <http://scaaa118.us.oracle.com>, Intel(R) 
>>>>>>> Xeon(R) CPU E5-2690 0 @ 2.90GHz, 32 cores, 235G, Oracle Linux Server 
>>>>>>> release 7.3
>>>>>>> Time: Tue Oct  9 16:06:07 2018 PDT elapsed time: 31 seconds (0d 0h 0m 31s)
>>>>>>>
>>>>>>> ---------------  T H R E A D  ---------------
>>>>>>>
>>>>>>> Current thread (0x00002af3dc6ac800):  VMThread "VM Thread" [stack: 
>>>>>>> 0x00002af44f10a000,0x00002af44f20a000] [id=13962] 
>>>>>>> _threads_hazard_ptr=0x00002af4ac090eb0, _nested_threads_hazard_ptr_cnt=0
>>>>>>>
>>>>>>> Stack: [0x00002af44f10a000,0x00002af44f20a000],  sp=0x00002af44f208720, 
>>>>>>>  free space=1017k
>>>>>>> Native frames: (J=compiled Java code, A=aot compiled Java code, 
>>>>>>> j=interpreted, Vv=VM code, C=native code)
>>>>>>> V  [libjvm.so+0x18c4923]  VMError::report_and_die(int, char const*, char 
>>>>>>> const*, __va_list_tag*, Thread*, unsigned char*, void*, void*, char 
>>>>>>> const*, int, unsigned long)+0x2c3
>>>>>>> V  [libjvm.so+0x18c56ef]  VMError::report_and_die(Thread*, void*, char 
>>>>>>> const*, int, char const*, char const*, __va_list_tag*)+0x2f
>>>>>>> V  [libjvm.so+0xb55aa0]  report_vm_error(char const*, int, char const*, 
>>>>>>> char const*, ...)+0x100
>>>>>>> V  [libjvm.so+0x11f2cfe]  JvmtiThreadState::cur_stack_depth()+0x14e
>>>>>>> V  [libjvm.so+0x11f3257]  JvmtiThreadState::update_for_pop_top_frame()+0x27
>>>>>>> V  [libjvm.so+0x119af99]  VM_UpdateForPopTopFrame::doit()+0xb9
>>>>>>> V  [libjvm.so+0x1908982]  VM_Operation::evaluate()+0x132
>>>>>>> V  [libjvm.so+0x19040be]  VMThread::evaluate_operation(VM_Operation*) 
>>>>>>> [clone .constprop.51]+0x18e
>>>>>>> V  [libjvm.so+0x1904960]  VMThread::loop()+0x4c0
>>>>>>> V  [libjvm.so+0x1904f53]  VMThread::run()+0xd3
>>>>>>> V  [libjvm.so+0x14e8300]  thread_native_entry(Thread*)+0x100
>>>>>>>
>>>>>>> VM_Operation (0x00002af4d8502910): UpdateForPopTopFrame, mode: safepoint, 
>>>>>>> requested by thread 0x00002af4dc008800
>>>>>>
>>>>>>
>>>>>
>>>>
>>


More information about the serviceability-dev mailing list