mirror of
https://github.com/torvalds/linux.git
synced 2024-11-10 22:21:40 +00:00
cgroup: Add annotation for holding namespace_sem in current_cgns_cgroup_from_root()
When I initially examined the function current_cgns_cgroup_from_root(), I was perplexed by its lack of holding cgroup_mutex. However, after Michal explained the reason[0] to me, I realized that it already holds the namespace_sem. I believe this intricacy could also confuse others, so it would be advisable to include an annotation for clarification. After we replace the cgroup_mutex with RCU read lock, if current doesn't hold the namespace_sem, the root cgroup will be NULL. So let's add a WARN_ON_ONCE() for it. [0]. https://lore.kernel.org/bpf/afdnpo3jz2ic2ampud7swd6so5carkilts2mkygcaw67vbw6yh@5b5mncf7qyet Signed-off-by: Yafang Shao <laoar.shao@gmail.com> Cc: Michal Koutny <mkoutny@suse.com> Signed-off-by: Tejun Heo <tj@kernel.org>
This commit is contained in:
parent
9067d90006
commit
0008454e8f
@ -1420,6 +1420,11 @@ current_cgns_cgroup_from_root(struct cgroup_root *root)
|
||||
|
||||
rcu_read_unlock();
|
||||
|
||||
/*
|
||||
* The namespace_sem is held by current, so the root cgroup can't
|
||||
* be umounted. Therefore, we can ensure that the res is non-NULL.
|
||||
*/
|
||||
WARN_ON_ONCE(!res);
|
||||
return res;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user