RFR: 8357650: ThreadSnapshot to take snapshot of thread for thread dumps [v5]

Kevin Walls kevinw at openjdk.org
Thu May 29 17:59:53 UTC 2025


On Thu, 29 May 2025 07:58:41 GMT, Alex Menkov <amenkov at openjdk.org> wrote:

>> This is first (hotspot) part of the update for `HotSpotDiagnosticMXBean.dumpThreads` and `jcmd Thread.dump_to_file` to include lock information in thread dumps (JDK-8356870).
>> The update has been split into parts to simplify reviewing.
>> The fix contains an implementation of `jdk.internal.vm.ThreadSnapshot` class to gather required information about a thread.
>> Second (dependent) part includes changes in `HotSpotDiagnosticMXBean.dumpThreads`/`jcmd Thread.dump_to_file`, spec updates and tests for the functionality.
>> 
>> Testing: new `HotSpotDiagnosticMXBean.dumpThreads`/`jcmd Thread.dump_to_file` functionality was tested in loom repo;
>>   sanity tier1 (this fix only)
>
> Alex Menkov has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Update src/hotspot/share/services/threadService.cpp
>   
>   Co-authored-by: David Holmes <62092539+dholmes-ora at users.noreply.github.com>

src/hotspot/share/services/threadService.hpp line 634:

> 632: };
> 633: 
> 634: 

I'm finding the class name VMThreadSnapshot confusing, as it's used to create a snapshot of any thread in the VM, not of the "VMThread".  This space is crowded, we have a class ThreadSnapshot here already.

VMThreadSnapshot is an AllStatic class with one method for creating snapshots... How about ThreadSnapshotFactory?

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

PR Review Comment: https://git.openjdk.org/jdk/pull/25425#discussion_r2114473010


More information about the hotspot-dev mailing list