RFR: JDK-8293156: Dcmd VM.classloaders fails to print the full hierarchy [v2]

Thomas Stuefe stuefe at openjdk.org
Wed Sep 21 06:51:57 UTC 2022


On Tue, 20 Sep 2022 05:37:44 GMT, Thomas Stuefe <stuefe at openjdk.org> wrote:

>> Fixes a bug in the `VM.classloaders` jcmd that causes class loaders to be omitted from the output if a parent class loader never loaded any class and therefore had no associated DCmd.
>> 
>> The fix changes the command to not rely on the existence of a CLD structure for the loader; instead, all information (loader class name, loader name, etc) is pulled via the loader oop, which has to be always there unless its the bootstrap loader.
>> 
>> Also, the tests were expanded to test the display of empty loaders and empty parent loaders.
>> 
>> Thanks to @dholmes-ora for finding this bug.
>
> Thomas Stuefe has updated the pull request incrementally with one additional commit since the last revision:
> 
>   cjplummer feedback

- Fixed all remaining occurrences of "childs"
- Fixed possible segfault when printing class name for bootstrap loader
- Fixed GHAs (apparently we don't have a MainWrapper class when executing jtreg in GHAs, so I cannot parse for it)

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

PR: https://git.openjdk.org/jdk/pull/10312


More information about the serviceability-dev mailing list