RFR: 8358645: Access violation in ThreadsSMRSupport::print_info_on during thread dump

Fredrik Bredberg fbredberg at openjdk.org
Wed Jun 25 08:42:27 UTC 2025


On Tue, 24 Jun 2025 23:43:05 GMT, David Holmes <dholmes at openjdk.org> wrote:

> We started observing these occasional crashes involving the JfrSamplerThread (which is a NonJavaThread) during JFR's termination thread dump. Examination of the `print_info_on` code showed that it was making an invalid assumption that it is safe to walk the thread's thread-list at a safepoint, as that is not true when you are dealing with a NonJavaThread, as it is not held at the safepoint and so the list you are walking can disappear whilst you examine it. I added some test code to make this more likely and was able to trigger similar crashes - see JBS for details.
> 
> The simple fix is to only walk JavaThreads.
> 
> Testing
>  - tier 5 JFR tests
>  - selected tests with JFR explicitly enabled
>  - tier 1-3 (sanity)
> 
> Thanks

Looks good to me.

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

Marked as reviewed by fbredberg (Committer).

PR Review: https://git.openjdk.org/jdk/pull/25963#pullrequestreview-2957231798


More information about the hotspot-runtime-dev mailing list