RFR: 8284950: CgroupV1 detection code should consider memory.swappiness [v6]

Severin Gehwolf sgehwolf at openjdk.java.net
Wed Apr 27 14:38:42 UTC 2022


On Wed, 27 Apr 2022 10:34:33 GMT, xpbob <duke at openjdk.java.net> wrote:

>> set memory.swappiness to 0,swap space will not be used 
>> determine the value of memory.swappiness
>> https://www.kernel.org/doc/Documentation/cgroup-v1/memory.txt
>> 
>> 
>>     Memory Limit: 50.00M
>>     Memory Soft Limit: Unlimited
>>     Memory & Swap Limit: 100.00M
>>     Maximum Processes Limit: 4194305 
>> 
>> =>
>> 
>>     Memory Limit: 50.00M
>>     Memory Soft Limit: Unlimited
>>     Memory & Swap Limit: 50.00M
>>     Maximum Processes Limit: 4194305
>
> xpbob has updated the pull request incrementally with one additional commit since the last revision:
> 
>   revert file

Changes requested by sgehwolf (Reviewer).

test/hotspot/jtreg/containers/docker/TestMisc.java line 60:

> 58:             testPrintContainerInfo();
> 59:             testPrintContainerInfoActiveProcessorCount();
> 60:             testPrintContainerMemoryInfo("100M", "150M");

Again. This test runs unconditionally. `--memory-swappiness` is not supported in cgroups v2. Thus, the test will fail on a cgroups v2 system. You need to only run this test on a cgroups v1 system. Have a look at `test/lib/jdk/test/lib/containers/cgroup/MetricsTester.java` how could could detect this and only run on `cgroupv1` providers.

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

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


More information about the core-libs-dev mailing list