lkml.org 
[lkml]   [2022]   [Aug]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
Subject[PATCHSET for-6.1] kernfs, cgroup: implement kernfs_deactivate() and cgroup_file_show()
Date
Hello,

Currently, deactivated kernfs nodes are used for two purposes - during
removal to kill and drain nodes and during creation to make multiple
kernfs_nodes creations to succeed or fail as a group.

This patchset make kernfs [de]activation generic so that it can be used
anytime to deactivate (hide and drain) and activate (show) kernfs nodes,
and, on top, implement cgroup_file_show() which allows toggling cgroup file
visiblity.

This is for the following pending patchset to allow disabling PSI on
per-cgroup basis:

https://lore.kernel.org/all/20220808110341.15799-1-zhouchengming@bytedance.com/t/#u

which requires hiding the corresponding cgroup interface files while
disabled.

This patchset contains the following seven patches.

0001-kernfs-Simply-by-replacing-kernfs_deref_open_node-wi.patch
0002-kernfs-Drop-unnecessary-mutex-local-variable-initial.patch
0003-kernfs-Refactor-kernfs_get_open_node.patch
0004-kernfs-Skip-kernfs_drain_open_files-more-aggressivel.patch
0005-kernfs-Make-kernfs_drain-skip-draining-more-aggressi.patch
0006-kernfs-Allow-kernfs-nodes-to-be-deactivated-and-re-a.patch
0007-cgroup-Implement-cgroup_file_show.patch

0001-0003 are misc prep patches. 0004-0006 implement kernsf_deactivate().
0008 implements cgroup_file_show() on top. The patches are also available in
the following git branch:

git://git.kernel.org/pub/scm/linux/kernel/git/tj/misc.git kernfs-deactivate

diffstat follows. Thanks.

fs/kernfs/dir.c | 120 +++++++++++++++++++++++++++++++++++++++++-------------------
fs/kernfs/file.c | 139 +++++++++++++++++++++++++++++++---------------------------------------
fs/kernfs/kernfs-internal.h | 1
include/linux/cgroup.h | 1
include/linux/kernfs.h | 2 +
kernel/cgroup/cgroup.c | 23 +++++++++++
6 files changed, 172 insertions(+), 114 deletions(-)

--
tejun


\
 
 \ /
  Last update: 2022-08-20 02:07    [W:0.107 / U:0.120 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site