From: Tejun Heo <tj@kernel.org>
To: Waiman Long <longman@redhat.com>
Cc: Li Zefan <lizefan@huawei.com>,
Johannes Weiner <hannes@cmpxchg.org>,
cgroups@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH] cgroup: Show control files in cgroup2 root after mount
Date: Tue, 18 Jul 2017 16:50:10 -0400 [thread overview]
Message-ID: <20170718205009.GE3365493@devbig577.frc2.facebook.com> (raw)
In-Reply-To: <255cc198-2c10-af76-98ca-086807d11540@redhat.com>
Hello,
On Tue, Jul 18, 2017 at 04:29:40PM -0400, Waiman Long wrote:
> I think the kernfs_activate() call is for the cgroup1 mount of debug
kernfs_activate() there is for any files which are created while a
controller moves between hierarchies, so, yeah, during boot, this is
where the root files for cgroup1 hierarchies would be activated.
> cgroup which probably failed as I put debug in the cgroup_no_v1= option.
Yeah, they just get skipped over.
> The RHEL7 system that I ran the test on tried to do v1-mount of all the
> cgroup controllers available. I am also wondering how a v1-mount of
> debug controller will make the controller files appear on cgroup2 root.
> Maybe I miss something in the code.
When a controller gets mounted on v1, the controller is detached from
cgroup2 hierarchy, so the corresponding files are removed from v2 root
and then created on v1, which are activated by the kernfs_activate()
call at the end of rebind.
> My test kernel was built out of your latest cgroup git tree with the
> thread mode patches on (review-cgroup2-threads-v3 branch).
I see. I'm testing with the same kernel.
> As I said above, I put in the kernel command line option
> "cgroup_no_v1=pids,debug,memory". Then I mounted the cgroup2 filesystem
> after boot.
>
> # mount -t cgroup2 cgroup2 /cgroup2
> # ls /cgroup2/
> cgroup.controllers cgroup.procs cgroup.subtree_control cgroup.threads
> # echo +memory > /cgroup2/cgroup.subtree_control
> # ls /cgroup2/
> cgroup.controllers debug.current_css_set
> cgroup.procs debug.current_css_set_cg_links
> cgroup.subtree_control debug.current_css_set_refcount
> cgroup.threads debug.masks
> debug.csses debug.taskcount
> debug.css_links
Heh, I'm really confused. If I do the same thing, I get the following
result which makes sense as the files would be activated in
cgroup_apply_cftypes() when the debug controller is registered during
boot.
# mkdir /cgroup2
# mount -t cgroup2 cgroup2 /cgroup2
# ls /cgroup2/
cgroup.controllers debug.current_css_set
cgroup.procs debug.current_css_set_cg_links
cgroup.subtree_control debug.current_css_set_refcount
cgroup.threads debug.masks
debug.csses debug.taskcount
debug.css_links
Thanks.
--
tejun
next prev parent reply other threads:[~2017-07-18 20:50 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-07-18 19:32 [PATCH] cgroup: Show control files in cgroup2 root after mount Waiman Long
2017-07-18 19:51 ` Tejun Heo
2017-07-18 20:00 ` Waiman Long
2017-07-18 20:12 ` Tejun Heo
2017-07-18 20:29 ` Waiman Long
2017-07-18 20:50 ` Tejun Heo [this message]
2017-07-18 21:06 ` Tejun Heo
2017-07-18 21:57 ` [PATCH cgroup/for-4.13-fixes] cgroup: create dfl_root files on subsys registration Tejun Heo
2017-07-18 22:09 ` Waiman Long
2017-07-18 22:11 ` Tejun Heo
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=20170718205009.GE3365493@devbig577.frc2.facebook.com \
--to=tj@kernel.org \
--cc=cgroups@vger.kernel.org \
--cc=hannes@cmpxchg.org \
--cc=linux-kernel@vger.kernel.org \
--cc=lizefan@huawei.com \
--cc=longman@redhat.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox