RFR: 8322420: [Linux] cgroup v2: Limits in parent nested control groups are not detected [v19]

Jan Kratochvil jkratochvil at openjdk.org
Wed Aug 14 03:28:55 UTC 2024


On Mon, 12 Aug 2024 18:39:46 GMT, Severin Gehwolf <sgehwolf at openjdk.org> wrote:

>> Jan Kratochvil has updated the pull request incrementally with two additional commits since the last revision:
>> 
>>  - Inline adjust_controller() twice
>>  - Revert "Unify 4 copies of adjust_controller()"
>>    
>>    This reverts commit 77a81d07d74c8ae9bf34bfd8df9bcaca451ede9a.
>
> test/hotspot/jtreg/containers/cgroup/NestedCgroup.java line 217:
> 
>> 215: 
>> 216:             // KFAIL - verify the CgroupSubsystem::initialize_hierarchy() and jdk.internal.platform.CgroupSubsystem.initializeHierarchy() bug
>> 217:             // TestTwoLimits does not see the lower MEMORY_MAX_OUTER limit.
> 
> Remove this obsolete(?) comment.

This comment is documenting what the `TestTwoLimits` testcase does. Which I find useful.
It is KFAIL - Known Failure - the current OpenJDK code does not properly simulate what Linux kernel does. If you do:

cgset -r memory.max=$[1024*1024*1024] a/b
cgset -r memory.max=$[512*1024] a
cgexec -g memory:a/b java...

Then OpenJDK thinks it is `1024*1024*1024 KB` but Linux kernel will limit OpenJDK to `512*1024 KB`. So this problem is documented and tested.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/17198#discussion_r1716261053


More information about the core-libs-dev mailing list