> Similar issue to the hotspot change discussed in > https://bugs.openjdk.org/browse/JDK-8293472. The Java metrics implementation > may get the resource limits wrong if there are additional cgroup fs mounts. > Apparently that's more common than one might think. I've reproduced this with > these existing tests on cg v2: > > > test/hotspot/jtreg/containers/docker/TestMemoryAwareness.java > test/jdk/jdk/internal/platform/docker/TestDockerCpuMetrics.java > test/jdk/jdk/internal/platform/docker/TestDockerMemoryMetrics.java > > > I've also added `test/jdk/jdk/internal/platform/docker/TestDockerBasic.java` > and amended > `test/jdk/jdk/internal/platform/cgroup/TestCgroupSubsystemFactory.java` which > unconditionally fails (irrespective of cgroup version in use). The fix is > fairly straight forward and is an extension which we already do for the > `cpuset` controller: Allow duplicates, and if there are any prefer those > mounted at `/sys/fs/cgroup`. > > Testing: > - [x] fastdebug build on cgroups v2 and cgroups v1 (before and after the > product fix) > - [x] added tests fail before, pass after the product fix. > - [x] Some manual testing using `cgcreate` and `cgexec` on cg1 and cg2. Still > pass. > - [ ] GHA still running. > > Please review! Many thanks in advance.
Severin Gehwolf has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains one commit: 8293540: [Metrics] Potentially incorrectly detected resource limits with additional cgroup fs mounts ------------- Changes: https://git.openjdk.org/jdk/pull/10248/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=10248&range=02 Stats: 175 lines in 6 files changed: 137 ins; 23 del; 15 mod Patch: https://git.openjdk.org/jdk/pull/10248.diff Fetch: git fetch https://git.openjdk.org/jdk pull/10248/head:pull/10248 PR: https://git.openjdk.org/jdk/pull/10248