RFR: 8342818: Implement CPU Time Profiling for JFR [v4]

Markus Grönlund mgronlun at openjdk.org
Thu Oct 31 16:07:46 UTC 2024


On Thu, 31 Oct 2024 13:35:43 GMT, Markus Grönlund <mgronlun at openjdk.org> wrote:

>> Johannes Bechberger has updated the pull request incrementally with one additional commit since the last revision:
>> 
>>   Remove min_valid_free_size_bytes
>
> Linux x64-debug:
> 
> jfr/recorder/checkpoint/types/traceid/jfrTraceIdKlassQueue.cpp:190
> 
> assert(id > 0) failed: invariant
> 
> ---------------  T H R E A D  ---------------
> 
> Current thread (0x00007efe60f3f280):  JavaThread "JFR Recorder Thread" daemon [_thread_in_vm, id=3499556, stack(0x00007efeb13f5000,0x00007efeb14f5000) (1024K)]
> 
> Stack: [0x00007efeb13f5000,0x00007efeb14f5000],  sp=0x00007efeb14f37d0,  free space=1017k
> Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
> V  [libjvm.so+0xfcd274]  EpochDispatchOp<JfrEpochQueue<JfrEpochQueueKlassPolicy>::ElementDispatch<KlassFunctor> >::dispatch(bool, unsigned char const*, unsigned long)+0x194  (jfrTraceIdKlassQueue.cpp:190)
> V  [libjvm.so+0xfcd75e]  void JfrEpochQueue<JfrEpochQueueKlassPolicy>::iterate<KlassFunctor>(KlassFunctor&, bool)+0x37e  (jfrStorageUtils.inline.hpp:160)
> V  [libjvm.so+0xfcbc88]  JfrTraceIdKlassQueue::iterate(void (*)(Klass*), bool)+0x38  (jfrTraceIdKlassQueue.cpp:269)
> V  [libjvm.so+0xfda2f4]  JfrTypeSet::serialize(JfrCheckpointWriter*, JfrCheckpointWriter*, bool, bool)+0xfb4  (jfrTypeSet.cpp:559)
> V  [libjvm.so+0xf11b6d]  flush_type_set(Thread*)+0x8d  (jfrCheckpointManager.cpp:640)
> V  [libjvm.so+0xf16a36]  JfrCheckpointManager::flush_type_set()+0x116  (jfrCheckpointManager.cpp:650)
> V  [libjvm.so+0xf944a6]  JfrRecorderService::flush()+0xe6  (jfrRecorderService.cpp:158)
> V  [libjvm.so+0xf94e2a]  JfrRecorderService::invoke_flush()+0xba  (jfrRecorderService.cpp:158)
> V  [libjvm.so+0xf95dfa]  JfrRecorderService::flushpoint()+0x10a  (jfrRecorderService.cpp:680)
> V  [libjvm.so+0xf96b38]  recorderthread_entry(JavaThread*, JavaThread*)+0x178  (jfrRecorderThreadLoop.cpp:83)
> V  [libjvm.so+0xefc16c]  JavaThread::thread_main_inner()+0xcc  (javaThread.cpp:759)
> V  [libjvm.so+0x1836106]  Thread::call_run()+0xb6  (thread.cpp:234)
> V  [libjvm.so+0x15144a8]  thread_native_entry(Thread*)+0x128  (os_linux.cpp:858)

> @mgronlun what is your reproducer? I didn't see these issues before in my own testing

Internal stress testing.

-------------

PR Comment: https://git.openjdk.org/jdk/pull/20752#issuecomment-2450255693


More information about the hotspot-dev mailing list