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

Markus Grönlund mgronlun at openjdk.org
Thu Oct 31 10:30:47 UTC 2024


On Thu, 31 Oct 2024 10:02:19 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
>
> src/hotspot/share/jfr/recorder/stacktrace/jfrAsyncStackTrace.cpp line 45:
> 
>> 43: 
>> 44: bool JfrAsyncStackTrace::record_async(JavaThread* jt, const frame& frame) {
>> 45:   NoHandleMark nhm;
> 
> Stack: [0x00007f02ff2f4000,0x00007f02ff3f4000],  sp=0x00007f02ff3ed8e0,  free space=998k
> Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
> V  [libjvm.so+0xdf5649]  HandleArea::allocate_null_handle()+0x179  (handles.cpp:46)
> V  [libjvm.so+0xc5259a]  RegisterMap::RegisterMap(JavaThread*, RegisterMap::UpdateMap, RegisterMap::ProcessFrames, RegisterMap::WalkContinuation)+0xaa  (frame.cpp:75)
> V  [libjvm.so+0xf9ffb9]  JfrVframeStream::JfrVframeStream(JavaThread*, frame const&, bool, bool)+0x59  (jfrStackTrace.cpp:160)
> V  [libjvm.so+0xf0940c]  JfrAsyncStackTrace::record_async(JavaThread*, frame const&)+0xac  (jfrAsyncStackTrace.cpp:58)
> V  [libjvm.so+0xf0be3d]  JfrCPUTimeThreadSampler::handle_timer_signal(void*)+0x4fd  (jfrCPUTimeThreadSampler.cpp:231)
> V  [libjvm.so+0xf0bf7f]  handle_timer_signal(int, siginfo*, void*)+0x4f  (jfrCPUTimeThreadSampler.cpp:723)
> 
> NoHandleMark will not work with with continuations. Please see how we do it in JfrStackTrace::record()

Perhaps even more interesting is that I got this when running out-of-the-box with:

XX:StartFlightRecording:settings=profile.jfc

// profile.jfc

    <event name="jdk.CPUTimeSample">
      <setting name="enabled" control="method-sampling-enabled">false</setting>
      <setting name="throttle">10ms</setting>
    </event>
    
This indicates that the event is turned on, despite "enabled" being false. Is there a bug in the control / enable setting mechanism?

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

PR Review Comment: https://git.openjdk.org/jdk/pull/20752#discussion_r1824224961


More information about the hotspot-dev mailing list