Hello, Li. On Tue, Dec 17, 2013 at 11:13:39AM +0800, Li Zefan wrote: > diff --git a/kernel/cgroup.c b/kernel/cgroup.c > index c36d906..769b5bb 100644 > --- a/kernel/cgroup.c > +++ b/kernel/cgroup.c > @@ -868,6 +868,15 @@ static void cgroup_diput(struct dentry *dentry, struct inode *inode) > struct cgroup *cgrp = dentry->d_fsdata; > > BUG_ON(!(cgroup_is_dead(cgrp))); > + > + /* > + * We should remove the cgroup object from idr before its > + * grace period starts, so we won't be looking up a cgroup > + * while the cgroup is being freed. > + */ Let's remove this comment and instead comment that this is to be made per-css. I mixed up the lifetime rules of the cgroup and css and thought css_from_id() should fail once css is confirmed to be offline, so the above comment. It looks like we'll eventually have to move cgrp->id to css->id (just simple per-ss idr) as the two objects' lifetime rules will be completely separate. Other than that, looks good to me. Thanks. -- tejun -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>