Re: [PATCH 4/7] sched: implement force_cpus_allowed()

From: Tejun Heo
Date: Tue Dec 08 2009 - 06:55:58 EST


Hello,

On 12/08/2009 08:48 PM, Peter Zijlstra wrote:
> Why bother with that?
>
> workqueue's CPU_POST_DEAD will flush the workqueue and destroy all
> threads under cpu_add_remove_lock, which excludes the cpu from coming
> back up before its fully destroyed.
>
> So there's no remaining tasks to be migrated back.
>
> Changing that semantics is not worthwhile.

It is worthwhile because the goal is to unify all worker pool
mechanisms. So, slow_work or whatnot (scsi EHs, FS specific worker
pools, async workers used for parallel probing) will all be converted
to use workqueue instead and with that we can't afford to wait for all
works to flush to down a cpu. All that's necessary to implement that
is migrating back the unbound workers which can be implemented as a
separate piece of code apart from regular operation. It would even
benefit the current implementation as it makes cpu up/down operations
much more deterministic.

Thanks.

--
tejun
--
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/