mirror of https://gitee.com/openkylin/linux.git
cgroup,rcu: convert call_rcu(free_cgroup_rcu) to kfree_rcu()
The rcu callback free_cgroup_rcu() just calls a kfree(), so we use kfree_rcu() instead of the call_rcu(free_cgroup_rcu). Signed-off-by: Lai Jiangshan <laijs@cn.fujitsu.com> Acked-by: Paul Menage <menage@google.com> Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com> Reviewed-by: Josh Triplett <josh@joshtriplett.org>
This commit is contained in:
parent
30088ad815
commit
f2da1c40dc
|
@ -806,13 +806,6 @@ static int cgroup_call_pre_destroy(struct cgroup *cgrp)
|
|||
return ret;
|
||||
}
|
||||
|
||||
static void free_cgroup_rcu(struct rcu_head *obj)
|
||||
{
|
||||
struct cgroup *cgrp = container_of(obj, struct cgroup, rcu_head);
|
||||
|
||||
kfree(cgrp);
|
||||
}
|
||||
|
||||
static void cgroup_diput(struct dentry *dentry, struct inode *inode)
|
||||
{
|
||||
/* is dentry a directory ? if so, kfree() associated cgroup */
|
||||
|
@ -850,7 +843,7 @@ static void cgroup_diput(struct dentry *dentry, struct inode *inode)
|
|||
*/
|
||||
BUG_ON(!list_empty(&cgrp->pidlists));
|
||||
|
||||
call_rcu(&cgrp->rcu_head, free_cgroup_rcu);
|
||||
kfree_rcu(cgrp, rcu_head);
|
||||
}
|
||||
iput(inode);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue