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