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