[jdk8u-dev] RFR: 8230305: Cgroups v2: Container awareness [v2]

Jonathan Dowland jdowland at openjdk.org
Wed Oct 5 08:26:01 UTC 2022


> This is a backport of 8230305 (Cgroups v2: Container awareness) for JDK8u, working from the jdk11u-dev backport as part of an effort to backport cgroups v2 to jdk8u-dev.
> 
> The patch does not apply clean after unshuffling and path fixing:
> 
>  * mostly copyright line issues
>  * different package name for jdk.test.lib.process.OutputAnalyzer
>  * Most of hotspot/src/os/linux/vm/cgroupSubsystem_linux.cpp failed due to context changes, manually resolved (mostly deletions)
> 
> A few other changes were made
> 
>  *  Rework use of newer logging API (log_debug etc) to use guarded tty->print_cr
>  *  replace os::strerror with the libc strerror (which is thread unsafe, but that should be addressed by backporting 8148425 separately)
> 
> patch touched hotspot/test/runtime/containers/docker/TestCPUAwareness.java which passes afterwards; I'm running further tests now (and awaiting GitHub CI doing the same)

Jonathan Dowland has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains three commits:

 - substitute os::strerror for strerror
   
   os::strerror was introduced in 8148425 (strerror() function is not
   thread-safe), which is probably out of scope for backporting (at least
   as part of this cgroups v2 effort). Replace uses of os::strerror with
   (thread unsafe) strerror, in common with the rest of JDK8u.
 - Rework use of newer logging API to tty->print_cr
   
   Remove includes of log.hpp that doesn't exist in jdk8u
   
   log_(debug|trace) to tty->print_cr guarded by PrintContainerInfo
 - 8230305: Cgroups v2: Container awareness
   
   Implement Cgroups v2 container awareness in hotspot
   
   Reviewed-by: bobv, dholmes

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

Changes: https://git.openjdk.org/jdk8u-dev/pull/127/files
 Webrev: https://webrevs.openjdk.org/?repo=jdk8u-dev&pr=127&range=01
  Stats: 2056 lines in 10 files changed: 1423 ins; 596 del; 37 mod
  Patch: https://git.openjdk.org/jdk8u-dev/pull/127.diff
  Fetch: git fetch https://git.openjdk.org/jdk8u-dev pull/127/head:pull/127

PR: https://git.openjdk.org/jdk8u-dev/pull/127


More information about the jdk8u-dev mailing list