All of lore.kernel.org
 help / color / mirror / Atom feed
From: Wei Gao via ltp <ltp@lists.linux.it>
To: Cyril Hrubis <chrubis@suse.cz>
Cc: rpalethorpe@suse.com, ltp@lists.linux.it
Subject: Re: [LTP] Question on .needs_cgroup_ctrls for cgroupv2
Date: Mon, 27 Feb 2023 10:17:09 -0500	[thread overview]
Message-ID: <20230227151709.GA12774@localhost> (raw)
In-Reply-To: <Y/zFIdiWccmVzddV@yuki>

On Mon, Feb 27, 2023 at 03:58:41PM +0100, Cyril Hrubis wrote:
> Hi!
> > How to setup correct test case for cgroupv2 check? I try to put following parameter but failed.
> > 
> > struct tst_test test = {
> > 	...
> >         .needs_cgroup_ctrls = (const char *const []){ "unified", NULL },
> >         .needs_cgroup_ver = TST_CG_V2,
> > };
> > 
> > 
> > After some investigation i found cgroup_find_ctrl which called by tst_cg_require seems not implement 
> > how to check cgroupv2, the controllers has no "unified" memeber, should we add CGROUP_CTRL_MEMBER("unified", xxx)
> > into controllers?  Correct me if any misunderstanding.
> > 
> > 
> > void tst_cg_require(const char *const ctrl_name,
> >                         const struct tst_cg_opts *options)
> > {
> >         struct cgroup_ctrl *const ctrl = cgroup_find_ctrl(ctrl_name);
> 
> I think that you are misunderstanding something, controllers that are
> checked by the .needs_cgroup_ctrls and tst_cg_require() are cgroup
> controllers such as memory or cpu controller.
> 
> And unified can be the hierarchy, that means that all controllers are in
> a single mount point which is how controllers are presented in the
> cgroup V2.
> 
> You can have a mix of V1 and V2 controllers on a system and LTP library
> abstracts away all the details so that you can focus on the test logic
> rather than on how things are set up on the system. You have to start by
> specifying which controllers is the test going to use, that's the
> .needs_cgroup_ctrls array and if the test is V2 only you pass the
> TST_CG_V2 in the flags.

So .needs_cgroup_ctrls can not used anymore for ONLY V2 case?
Since i encounter "tst_cgroup.c:848: TCONF: V2 'memory' controller required, but it's mounted on V1" when i add ".needs_cgroup_ctrls = (const char *const []){ "memory", NULL }". 

If yes then i have to manual create V2 cgroup in test case?

BTW is there any example for V2 case? I try to run some case with V2 enalbed but both failed.
> 
> -- 
> Cyril Hrubis
> chrubis@suse.cz

-- 
Mailing list info: https://lists.linux.it/listinfo/ltp

  reply	other threads:[~2023-02-27 15:17 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-02-27 14:44 [LTP] Question on .needs_cgroup_ctrls for cgroupv2 Wei Gao via ltp
2023-02-27 14:58 ` Cyril Hrubis
2023-02-27 15:17   ` Wei Gao via ltp [this message]
2023-02-27 15:28     ` Cyril Hrubis
2023-02-27 15:52       ` Richard Palethorpe

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20230227151709.GA12774@localhost \
    --to=ltp@lists.linux.it \
    --cc=chrubis@suse.cz \
    --cc=rpalethorpe@suse.com \
    --cc=wegao@suse.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.