[PATCH v2 -next] cgroup: update some statememt about delegation

Chen Ridong posted 1 patch 1 year, 5 months ago
Documentation/admin-guide/cgroup-v2.rst | 10 ++++++----
kernel/cgroup/cgroup.c                  |  2 +-
2 files changed, 7 insertions(+), 5 deletions(-)
[PATCH v2 -next] cgroup: update some statememt about delegation
Posted by Chen Ridong 1 year, 5 months ago
The comment in cgroup_file_write is missing some interfaces, such as
'cgroup.threads'. All delegatable files are listed in
'/sys/kernel/cgroup/delegate', so update the comment in cgroup_file_write.
Besides, add a statement that files outside the namespace shouldn't be
visible from inside the delegated namespace.

Signed-off-by: Chen Ridong <chenridong@huawei.com>
---
 Documentation/admin-guide/cgroup-v2.rst | 10 ++++++----
 kernel/cgroup/cgroup.c                  |  2 +-
 2 files changed, 7 insertions(+), 5 deletions(-)

diff --git a/Documentation/admin-guide/cgroup-v2.rst b/Documentation/admin-guide/cgroup-v2.rst
index f2d1ec7d6aba..3618168de371 100644
--- a/Documentation/admin-guide/cgroup-v2.rst
+++ b/Documentation/admin-guide/cgroup-v2.rst
@@ -533,10 +533,12 @@ cgroup namespace on namespace creation.
 Because the resource control interface files in a given directory
 control the distribution of the parent's resources, the delegatee
 shouldn't be allowed to write to them.  For the first method, this is
-achieved by not granting access to these files.  For the second, the
-kernel rejects writes to all files other than "cgroup.procs" and
-"cgroup.subtree_control" on a namespace root from inside the
-namespace.
+achieved by not granting access to these files.  For the second, files
+outside the namespace should be hidden from the delegatee by the means
+of at least mount namespacing, and the kernel rejects writes to all files
+on a namespace root from inside the cgroup namespace, except for those
+files listed in "/sys/kernel/cgroup/delegate" (including "cgroup.procs",
+"cgroup.threads", "cgroup.subtree_control", etc.).
 
 The end results are equivalent for both delegation types.  Once
 delegated, the user can build sub-hierarchy under the directory,
diff --git a/kernel/cgroup/cgroup.c b/kernel/cgroup/cgroup.c
index a3fa645f8433..16b9749e131e 100644
--- a/kernel/cgroup/cgroup.c
+++ b/kernel/cgroup/cgroup.c
@@ -4131,7 +4131,7 @@ static ssize_t cgroup_file_write(struct kernfs_open_file *of, char *buf,
 	 * If namespaces are delegation boundaries, disallow writes to
 	 * files in an non-init namespace root from inside the namespace
 	 * except for the files explicitly marked delegatable -
-	 * cgroup.procs and cgroup.subtree_control.
+	 * eg. cgroup.procs, cgroup.threads and cgroup.subtree_control.
 	 */
 	if ((cgrp->root->flags & CGRP_ROOT_NS_DELEGATE) &&
 	    !(cft->flags & CFTYPE_NS_DELEGATABLE) &&
-- 
2.34.1
Re: [PATCH v2 -next] cgroup: update some statememt about delegation
Posted by Michal Koutný 1 year, 5 months ago
On Thu, Aug 15, 2024 at 01:14:08PM GMT, Chen Ridong <chenridong@huawei.com> wrote:
> The comment in cgroup_file_write is missing some interfaces, such as
> 'cgroup.threads'. All delegatable files are listed in
> '/sys/kernel/cgroup/delegate', so update the comment in cgroup_file_write.
> Besides, add a statement that files outside the namespace shouldn't be
> visible from inside the delegated namespace.
> 
> Signed-off-by: Chen Ridong <chenridong@huawei.com>
> ---
>  Documentation/admin-guide/cgroup-v2.rst | 10 ++++++----
>  kernel/cgroup/cgroup.c                  |  2 +-
>  2 files changed, 7 insertions(+), 5 deletions(-)

Acked-by: Michal Koutný <mkoutny@suse.com>
Re: [PATCH v2 -next] cgroup: update some statememt about delegation
Posted by Tejun Heo 1 year, 5 months ago
On Thu, Aug 15, 2024 at 01:14:08PM +0000, Chen Ridong wrote:
> The comment in cgroup_file_write is missing some interfaces, such as
> 'cgroup.threads'. All delegatable files are listed in
> '/sys/kernel/cgroup/delegate', so update the comment in cgroup_file_write.
> Besides, add a statement that files outside the namespace shouldn't be
> visible from inside the delegated namespace.
> 
> Signed-off-by: Chen Ridong <chenridong@huawei.com>

Applied to cgroup/for-6.12 w/ text reflowed for consistency.

Thanks.

-- 
tejun