Re: [PATCH pm] freezer: fix wait_event_freezable/__thaw_task races

From: Rafael J. Wysocki
Date: Wed Nov 02 2011 - 20:58:54 EST


On Thursday, November 03, 2011, Tejun Heo wrote:
> On Thu, Nov 03, 2011 at 01:20:41AM +0100, Rafael J. Wysocki wrote:
> > On Tuesday, November 01, 2011, Tejun Heo wrote:
> > > From: Oleg Nesterov <oleg@xxxxxxxxxx>
> > >
> > > wait_event_freezable() and friends stop the waiting if try_to_freeze()
> > > fails. This is not right, we can race with __thaw_task() and in this
> > > case
> > >
> > > - wait_event_freezable() returns the wrong ERESTARTSYS
> > >
> > > - wait_event_freezable_timeout() can return the positive
> > > value while condition == F
> > >
> > > Change the code to always check __retval/condition before return.
> > >
> > > Note: with or without this patch the timeout logic looks strange,
> > > probably we should recalc timeout if try_to_freeze() returns T.
> > >
> > > tj: Updated to apply to wait_event_freezekillable() too.
> > >
> > > Signed-off-by: Oleg Nesterov <oleg@xxxxxxxxxx>
> > > Acked-by: Tejun Heo <tj@xxxxxxxxxx>
> >
> > Applied to linux-pm/linux-next.
>
> Just in case, this patch isn't correct with preceding patches (the
> freezer update patchset), so should only be applied after them.

OK, so I guess I should drop it from my linux-next branch?

Rafael
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/