Re: [PATCH 1/8] PM: Add suspend block api.

Rafael J. Wysocki
2010-05-20T22:27:31Z

On Thursday 20 May 2010, Tejun Heo wrote:
> Hello,
>
> (sorry about late reply)
>
> On 04/30/2010 07:26 PM, Oleg Nesterov wrote:
> > Currently _cpu_down() can't flush and/or stop the frozen cwq->thread.
> >
> > IIRC this is fixable, but needs the nasty complications. We should
> > thaw + stop the frozen cwq->thread, then move the pending works to
> > another CPU.
>
> Oh, this isn't an issue w/ cmwq. While frozen all new works are
> collected into per-cpu delayed worklist and while frozen trustee in
> charge of the cpu will keep waiting. Once thawed, trustee will
> execute all works including the delayed ones unbound to any cpu.

So, does it require any intrusive changes to make it possible to create
multithread freezable workqueues?

Rafael