Re: Re: [RFC][PATCH -mm 5/6] Freezer: Use freezing timeout more efficiently

Oleg Nesterov
2007-07-10T17:17:04Z

On 07/10, Rafael J. Wysocki wrote:
>
> > Besides, we can add another timeout for breaking the loop from a "locked up"
> > state.
>
> Actually I like this idea. :-)
>
> I have updated the patch to use the additional timeout, please have a look
> (below).

Q: do we really need these complications with UNINTERRUPTIBLE/blocked ?

Just watch the "todo", it it doesn't decrease during BREAK_TIMEOUT, then retry.
No?

> + if (todo && freeze_user_space && !time_after(jiffies, end_time)) {
> + /*
> + * Some tasks have not been able to freeze. They might be stuck
> + * in TASK_UNINTERRUPTIBLE waiting for the frozen tasks. Try to
> + * thaw the tasks that have frozen without clearing the freeze
> + * requests of the remaining tasks and repeat.
> + */

Another question, why do we check "freeze_user_space" here?

Oleg.