This patchset adds cgroup v2 support to cgcreate.

Since the automated tests have been split into a separate git repo,
those patches will come out in a separate patchset.

Note that the functional test suite still does not support cgroup
v2.  I have been able to test the vast majority of the new code via
unit tests, and the code coverage is excellent... But I don't like
the technical debt that is accumulating by not having cgroup v2
functional tests in place.

For the time being, I tested the changes by hand under a variety of
scenarios:
* Create a single cgroup v1 cgroup
* Create a single cgroup v2 cgroup
* Create a hierarchy of v1 cgroups
* Create a hierarchy of v2 cgroups
* Create a v1 and a v2 cgroup at the same time
* Create a v1 and v2 hierarchy at the same time

Code is available on github here:
https://github.com/drakenclimber/libcgroup/tree/issues/cgcreate

Automated test results are passing and are available here:
https://travis-ci.com/github/drakenclimber/libcgroup/builds/177698810

Code coverage increased by 1% and is now at 20.53%:
https://coveralls.io/builds/32409091

Tom Hromatka (6):
  api.c: Refactor duplicate logic in cgroup modify and create
  api.c: Refactor tasks file permissions code into its own function
  api.c: Add function to get the cgroup version of a controller
  api.c: Add function to manage the cgroup v2 subtree_control file
  api.c: Add function to recursively manage the cgroup v2 subtree
  api.c: Add cgroup v2 support to cgroup_create_cgroup()

 src/api.c                | 337 ++++++++++++++++++++++++++++++---------
 src/libcgroup-internal.h |  19 +++
 2 files changed, 280 insertions(+), 76 deletions(-)

-- 
2.25.3



_______________________________________________
Libcg-devel mailing list
Libcg-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/libcg-devel

Reply via email to