RFR: 8342818: Implement JEP 509: JFR CPU-Time Profiling [v29]

Johannes Bechberger jbechberger at openjdk.org
Tue Jun 3 07:17:09 UTC 2025


On Mon, 2 Jun 2025 20:02:15 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:
>> 
>>   Fix bug related to async stack walking
>
> src/hotspot/share/jfr/periodic/sampling/jfrCPUTimeThreadSampler.cpp line 49:
> 
>> 47: 
>> 48: static bool is_excluded(JavaThread* thread) {
>> 49:   return thread->is_hidden_from_external_view() || thread->jfr_thread_local()->is_excluded();
> 
> I think I misled you saying that JfrRecorder_thread would be excluded by the above expression. That was true - but not anymore.
> 
> Our exclusion test looks like:
> 
> static inline bool is_excluded(JavaThread* jt) {
>   assert(jt != nullptr, "invariant");
>   return jt->is_Compiler_thread() || jt->is_hidden_from_external_view() || jt->is_JfrRecorder_thread() || jt->jfr_thread_local()->is_excluded();
> }
> 
> I like you could fold jt->is_Compiler_thread() into jt->is_hidden_from_external_view() - good!.
> 
> But can you please again list the condition jt->is_JfrRecorder_thread()? Sorry, I forgot we had removed it from being considered excluded on a per JfrThreadLocal level. Thanks.

No problem.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/25302#discussion_r2122934873


More information about the hotspot-dev mailing list