On Thu, 17 Aug 2023 15:13:16 GMT, Chris Plummer <cjplum...@openjdk.org> wrote:

>> Current test expects `G1HeapRegionSize` flag to be printed out from jmap. 
>> But that one is not printed when Shenandoah is enabled. I opted for the 
>> minimally intrusive fix: move the additional Shenandoah printout to the 
>> Shenandoah-specific block.
>> 
>> Additional testing:
>>  - [x] Affected test now passes with Shenandoah, continues to pass with G1, 
>> Serial, Parallel
>>  - [x] `sun/tools/jhsdb` passes with {Serial, Parallel, G1, Shenandoah}
>>  - [x] `serviceability/sa` passes with {Serial, Parallel, G1, Shenandoah}
>
> src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/tools/HeapSummary.java 
> line 89:
> 
>> 87:       printValMB("CompressedClassSpaceSize = ", 
>> getFlagValue("CompressedClassSpaceSize", flagMap));
>> 88:       printValMB("MaxMetaspaceSize         = ", 
>> getFlagValue("MaxMetaspaceSize", flagMap));
>> 89:       printValMB("G1HeapRegionSize         = ", HeapRegion.grainBytes());
> 
> This call to grainBytes() is suspect because it assumes G1 is being used even 
> though it may not be. That was the case even before your changes because it 
> was being called for SerialGC and ParallelGC. Perhaps the old code is better, 
> but also fix it to only print G1HeapRegionSize for G1. I'd also suggest 
> fixing the test to just remove the check for G1HeapRegionSize. It's not 
> important.

I am happy to just drop the check to `G1HeapRegionSize` in the test.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/15328#discussion_r1297406539

Reply via email to