On Tue, Nov 22, 2011 at 10:20:02AM +0800, Li Zefan wrote: > Tejun Heo wrote: > > Hello, Michal. > > > > On Wed, Nov 16, 2011 at 10:50:34PM +0100, Michal Hocko wrote: > >> +/* Task is frozen or will freeze immediately when next it gets woken */ > >> +static bool is_task_frozen_enough(struct task_struct *task) > >> +{ > >> + return frozen(task) || > >> + (task_is_stopped_or_traced(task) && freezing(task)); > >> +} > > > > Hmmm... w/ pending freezer updates, the above would always return > > %true if there's freezing in progress, which can't be right. Maybe > > Only if the task is stopped/trace. You're right, missed parantheses. > If we try to freeze a stopped task, it will be kept in freezing state. > > > just test stopped/traced? > > This can trigger a BUG_ON in update_if_frozen(), because we always count a > stopped task as frozen. So, yeah, the patch looks good to me, but it still isn't difficult to trigger BUG_ON() there. We need a lot of fixes in cgroup_freezer. Thanks. -- tejun -- To unsubscribe from this list: send the line "unsubscribe cgroups" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html