mirror of
https://github.com/Fishwaldo/Star64_linux.git
synced 2025-06-20 21:51:05 +00:00
cgroup: introduce cgroup_{save|propagate|restore}_control()
While controllers are being enabled and disabled in cgroup_subtree_control_write(), the original subsystem masks are stashed in local variables so that they can be restored if the operation fails in the middle. This patch adds dedicated fields to struct cgroup to be used instead of the local variables and implements functions to stash the current values, propagate the changes and restore them recursively. Combined with the previous changes, this makes subsystem management operations fully recursive and modularlized. This will be used to expand cgroup core functionalities. While at it, remove now unused @css_enable and @css_disable from cgroup_subtree_control_write(). Signed-off-by: Tejun Heo <tj@kernel.org> Acked-by: Zefan Li <lizefan@huawei.com>
This commit is contained in:
parent
ce3f1d9d19
commit
15a27c362d
2 changed files with 64 additions and 20 deletions
|
@ -260,6 +260,8 @@ struct cgroup {
|
|||
*/
|
||||
u16 subtree_control;
|
||||
u16 subtree_ss_mask;
|
||||
u16 old_subtree_control;
|
||||
u16 old_subtree_ss_mask;
|
||||
|
||||
/* Private pointers for each registered subsystem */
|
||||
struct cgroup_subsys_state __rcu *subsys[CGROUP_SUBSYS_COUNT];
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue