Re: [RFC 09/16] kgr: mark task_safe in some kthreads

From: Jiri Kosina
Date: Thu May 01 2014 - 16:17:53 EST


On Thu, 1 May 2014, Tejun Heo wrote:

> > Some threads do not use kthread_should_stop. Before we enable a
>
> Haven't really following kgraft development but is it safe to assume
> that all kthread_should_stop() usages are clean side-effect-less
> boundaries? If so, why is that property guaranteed? Is there any
> mechanism for sanity checks? Maybe I'm just failing to understand how
> the whole thing is supposed to work but this looks like it could
> devolve into something more broken than the freezer which we haven't
> fully recovered from yet.

Hi Tejun,

first, thanks a lot for review.

I agree that this expectation might really somewhat implicit and is not
probably properly documented anywhere. The basic observation is "whenever
kthread_should_stop() is being called, all data structures are in a
consistent state and don't need any further updates in order to achieve
consistency, because we can exit the loop immediately here", as
kthread_should_stop() is the very last thing every freezable kernel thread
is calling before starting a new iteration.

For the sake of collecting data points -- do you happen to have any
counter-example to the assumption?

Thanks,

--
Jiri Kosina
SUSE Labs
--
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/