On Mon, Aug 3, 2009 at 6:05 PM, Paul Menage<menage@xxxxxxxxxx> wrote: > On Mon, Aug 3, 2009 at 5:56 PM, Benjamin Blum<bblum@xxxxxxxxxx> wrote: >> No, the idea is that even though we had a reference that we already >> dropped, we in effect "traded" the newcg to the task for its oldcg, >> giving it our reference on newcg and gaining its reference on oldcg. I >> believe the cgroup_mutex guarantees that it'll still be there when we >> do the trade - perhaps a BUG_ON(tsk->cgroups != oldcg) is wanted >> inside the second task_lock section there? > > I don't think that's safe, since the task could exit and drop its > reference (and switch to init_css_set). Yes, but while holding the task's lock while trading the pointers we first do a PF_EXITING check, so it can't have gone away if we successfully traded. >>> >>> I think it's more intuitive to return 1 if found and 0 if not found. >> >> I was sticking with the convention of nonzero return values indicating >> failure, as is used everywhere else in this context. >> > > Make it a bool, so that it's intuitively more obvious that true==success? ok. _______________________________________________ Containers mailing list Containers@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linux-foundation.org/mailman/listinfo/containers