RFR: 8280761: UseCompressedOops should be set after limit_heap_by_allocatable_memory [v3]

Albert Mingkun Yang ayang at openjdk.java.net
Fri Apr 8 08:51:34 UTC 2022


On Fri, 8 Apr 2022 07:39:38 GMT, KIRIYAMA Takuya <duke at openjdk.java.net> wrote:

>> I fixed to set UseCompressedOops flag after limit_heap_by_allocatable_memory(). 
>> So when ulimit -v is called and -XX:MaxRAM is set, UseCompressedOops does not become false. 
>> And all hotspot tier1 test are passed.
>> Would you please review this fix?
>
> KIRIYAMA Takuya has updated the pull request incrementally with one additional commit since the last revision:
> 
>   8280761 UseCompressedOops should be set after limit_heap_by_allocatable_memory

In summary, the signature I have in mind is sth like `checkFlag(long ulimit_v, long max_ram, boolean expected_coop)`.

test/hotspot/jtreg/gc/arguments/TestUseCompressedOopsFlagsWithUlimit.java line 86:

> 84:     // 1. Verify that UseCompressedOops Ergo follows ulimit -v setting.
> 85:     // 2. Verify that UseCompressedOops forces compressed oops limit even
> 86:     //    when ulimit -v are specified.

I understand the first bullet but not the second. Looking at the reproducers in the JBS ticket, `UseCompressedOops` should not be provided; it's read only.

test/hotspot/jtreg/gc/arguments/TestUseCompressedOopsFlagsWithUlimit.java line 90:

> 88:     long oneG = 1L * 1024L * 1024L * 1024L;
> 89: 
> 90:     // Args: MaxRAM , MaxRAMPercentage, forcecoop, expect coop

I am not sure why `MaxRAMPercentage` is needed here.

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

PR: https://git.openjdk.java.net/jdk/pull/7938



More information about the hotspot-gc-dev mailing list