[11u] RFR: 8258414: OldObjectSample events too expensive
Thomas Stüfe
thomas.stuefe at gmail.com
Thu Apr 22 11:02:16 UTC 2021
Opened Issue https://bugs.openjdk.java.net/browse/JDK-8265750
...Thomas
On Thu, Apr 22, 2021 at 11:35 AM Aleksey Shipilev <shade at redhat.com> wrote:
> On 4/22/21 11:19 AM, Doerr, Martin wrote:
> > Hi,
> >
> > it did not only break the debug build.
> >
> > We have seen a crash on Windows:
> > # Internal Error (./src/hotspot/share/runtime/safepoint.cpp:894),
> pid=11412, tid=12932
> > # fatal error: Deadlock in safepoint code. Should have called back to
> the VM before blocking.
> >
> > V [jvm.dll+0x247c64] report_fatal+0x64 (debug.cpp:268)
> > V [jvm.dll+0x65e30b] SafepointSynchronize::block+0x14b
> (safepoint.cpp:893)
> > V [jvm.dll+0x101d44] SafepointMechanism::block_if_requested+0x34
> (safepointmechanism.inline.hpp:73)
> > V [jvm.dll+0x6f0d9a]
> JavaThread::check_safepoint_and_suspend_for_native_trans+0xca
> (thread.cpp:2508)
> > V [jvm.dll+0x5e3175] ObjectSampleCheckpoint::on_rotation+0xa5
> (objectsamplecheckpoint.cpp:301)
> > V [jvm.dll+0x397694] JfrRecorderService::pre_safepoint_write+0x64
> (jfrrecorderservice.cpp:428)
> > V [jvm.dll+0x3978a4] JfrRecorderService::rotate+0x194
> (jfrrecorderservice.cpp:325)
> > V [jvm.dll+0x398324] recorderthread_entry+0xd4
> (jfrrecorderthreadloop.cpp:76)
> > V [jvm.dll+0x6f7649] JavaThread::run+0x139 (thread.cpp:1840)
> > V [jvm.dll+0x6f06b4] Thread::call_run+0x84 (thread.cpp:391)
> > V [jvm.dll+0x5f8e36] thread_native_entry+0xd6 (os_windows.cpp:460)
> >
> > Test:
> > jdk/jfr/startupargs/TestOldObjectQueueSize.java
>
> Even on Linux, there are lots of jdk_jfr test failures:
>
> TEST TOTAL PASS FAIL
> ERROR
> >> jtreg:test/jdk/jdk/jfr 441 387 54
> 0 <<
>
>
> Mostly failing like this:
>
> # Internal Error
> (/home/shade/trunks/jdk-updates-jdk11u-dev/src/hotspot/share/jfr/leakprofiler/checkpoint/objectSampleCheckpoint.cpp:298),
>
> pid=2199952, tid=2200076
> # assert(SafepointSynchronize::is_at_safepoint()) failed: must be at
> safepoint!
>
> Stack: [0x00007f7cbd920000,0x00007f7cbda21000], sp=0x00007f7cbda1f700,
> free space=1021k
> Native frames: (J=compiled Java code, A=aot compiled Java code,
> j=interpreted, Vv=VM code, C=native
> code)
> V [libjvm.so+0x1b836c7] VMError::report_and_die(int, char const*, char
> const*, __va_list_tag*,
> Thread*, unsigned char*, void*, void*, char const*, int, unsigned
> long)+0x397
> V [libjvm.so+0x1b845e5] VMError::report_and_die(Thread*, void*, char
> const*, int, char const*,
> char const*, __va_list_tag*)+0x35
> V [libjvm.so+0xc3d7aa] report_vm_error(char const*, int, char const*,
> char const*, ...)+0x10a
> V [libjvm.so+0x1645973]
> ObjectSampleCheckpoint::on_rotation(ObjectSampler const*)+0x893
> V [libjvm.so+0x1093c45] JfrRecorderService::pre_safepoint_write()+0x255
> V [libjvm.so+0x1093e9c] JfrRecorderService::write()+0xcc
> V [libjvm.so+0x1094242] JfrRecorderService::finalize_current_chunk()+0x22
> V [libjvm.so+0x10948b0] JfrRecorderService::rotate(int)+0x370
> V [libjvm.so+0x1096492] recorderthread_entry(JavaThread*, Thread*)+0x162
> V [libjvm.so+0x1ab7d92] JavaThread::thread_main_inner()+0x252
> V [libjvm.so+0x1ab0e8b] Thread::call_run()+0x7b
> V [libjvm.so+0x1694806] thread_native_entry(Thread*)+0x116
>
>
> David, Jaroslav, you have to run the targeted subsystem tests when doing a
> backport like this!
>
> --
> Thanks,
> -Aleksey
>
>
More information about the jdk-updates-dev
mailing list