[LTP] [PATCH v4 00/19] Expand Cgroup lib and modify controller tests
Richard Palethorpe
rpalethorpe@suse.de
Mon May 2 11:19:28 CEST 2022
Hello Luke,
I'm happy with this. Although perhaps there will be some issues with the
tests because there are quite a lot of changes. Would be nice to get it
into the next release.
For the whole patch series:
Reviewed-by: Richard Palethorpe <rpalethorpe@suse.com>
Luke Nowakowski-Krijger <luke.nowakowskikrijger@canonical.com> writes:
> This patchset aims to expand the cgroup_lib shell library to simplify
> and centralize the whole mounting and cleanup process that can get
> rather confusing and redundant when writing cgroup controller tests from
> a shell environment. This is done by having the shell library make calls
> to the C cgroup API from a binary utility.
>
> In this patch set there are a few tests that have been extensively
> rewritten to work with the new test API and to use the new functionality
> from the cgroup lib. Because the test Cgroup lib handles mounting for v1
> and v2 controllers, some tests were modified to also work under cgroup
> v2. Some tests that were written for v1 controller also effictively test
> v2 controllers, while others were written to test v2 controllers in the
> spirit of the test or skipped outright.
>
> Luke Nowakowski-Krijger (19):
> API/cgroup: Modify tst_cg_print_config for parsing and consumption
> API/cgroup: Add option for specific pid to tst_cg_opts
> API/cgroup: Add cgroup_find_root helper function
> API/cgroup: Add CTRL_NAME_MAX define
> tst_test_macros: Add TST_TOSTR macro
> API/cgroup: Implement tst_cg_load_config
> API/cgroup: Add more controllers to tst_cgroup
> API/cgroup: refuse to mount blkio when io controller is mounted
> testcases/lib: Implement tst_cgctl binary
> testcases/lib: Add tst_flag2mask function
> controllers: Expand cgroup_lib shell library
> controllers: Update cgroup_fj_* to use newer cgroup lib and test lib
> controllers: Update memcg_control_test to newer test lib and cgroup
> lib
> controllers: Update memcg/regression/* to new test and cgroup lib
> controllers: Update memcg_stress_test to use newer cgroup lib
> controllers: update memcg/functional to use newer cgroup lib
> controllers: Update pids.sh to use newer cgroup lib
> controllers: update cpuset_regression_test.sh to use newer cgroup lib
> controllers: update cgroup_regression_test to use newer cgroup lib
>
> include/tst_cgroup.h | 17 +-
> include/tst_test_macros.h | 3 +
> lib/tst_cgroup.c | 215 +++++++++++++++++-
> .../cgroup/cgroup_regression_test.sh | 31 +--
> .../controllers/cgroup_fj/cgroup_fj_common.sh | 113 +++------
> .../cgroup_fj/cgroup_fj_function.sh | 169 ++++++++------
> .../controllers/cgroup_fj/cgroup_fj_proc.c | 24 +-
> .../controllers/cgroup_fj/cgroup_fj_stress.sh | 168 +++++++-------
> testcases/kernel/controllers/cgroup_lib.sh | 141 ++++++++++--
> .../cpuset/cpuset_regression_test.sh | 26 +--
> .../controllers/memcg/control/mem_process.c | 28 +--
> .../memcg/control/memcg_control_test.sh | 150 +++---------
> .../memcg/functional/memcg_force_empty.sh | 2 +-
> .../controllers/memcg/functional/memcg_lib.sh | 54 +++--
> .../memcg/regression/memcg_regression_test.sh | 202 ++++++++--------
> .../memcg/regression/memcg_test_1.c | 40 ++--
> .../memcg/regression/memcg_test_2.c | 24 +-
> .../memcg/regression/memcg_test_3.c | 38 ++--
> .../memcg/regression/memcg_test_4.c | 24 +-
> .../memcg/regression/memcg_test_4.sh | 50 ++--
> .../memcg/stress/memcg_stress_test.sh | 32 +--
> testcases/kernel/controllers/pids/pids.sh | 67 +-----
> testcases/lib/Makefile | 2 +-
> testcases/lib/tst_cgctl.c | 87 +++++++
> testcases/lib/tst_test.sh | 13 ++
> 25 files changed, 927 insertions(+), 793 deletions(-)
> create mode 100644 testcases/lib/tst_cgctl.c
--
Thank you,
Richard.
More information about the ltp
mailing list