Please review this test-only enhancement. It creates a regression test for the 
Amazon ECS setup on cgroups v1 where the parent memory limit isn't visible 
inside the container and, thus, needs to rely on the cg v1 specific 
`hierarchical_memory_limit` token in `memory.stat`. The proposed test is cg v1 
only and needs to be run as root. It's skipped otherwise. It's useful to have 
when working on refactorings like #27743  so as not to regress.

The other changes are an effort to reduce code duplication in the test code 
where similar patterns have been used in other container tests.

Testing (all on Linux x86_64):
- [x] CG version 2, run as root. Engine: docker. Test is skipped.
- [x] CG version 1, run as root. Engine: docker. Test passes and fails without 
the product fix of [JDK-8370572](https://bugs.openjdk.org/browse/JDK-8370572)
- [x] CG version 1, run as root. Engine: podman. Test passes and fails without 
the product fix of [JDK-8370572](https://bugs.openjdk.org/browse/JDK-8370572)
- [X] CG version 1, run as non-root. Test skipped.
- [x] GHA, though I don't think this is very useful for this change.

Thoughts?

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

Commit messages:
 - 8370966: Create regression test for hierarchical memory limit fix in 
JDK-8370572

Changes: https://git.openjdk.org/jdk/pull/28201/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=28201&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8370966
  Stats: 191 lines in 8 files changed: 154 ins; 32 del; 5 mod
  Patch: https://git.openjdk.org/jdk/pull/28201.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/28201/head:pull/28201

PR: https://git.openjdk.org/jdk/pull/28201

Reply via email to