Re: [PATCH 1/3] stop_machine: short exit path for if we cannot create enough threads

From: Rusty Russell
Date: Tue May 06 2008 - 01:04:29 EST


On Tuesday 29 April 2008 11:29:21 Hidetoshi Seto wrote:
> stop_machine_run() invokes kthread 'kstopmachine' and the kthread
> creates its children for every other cpus.

Hi Hidetoshi,

I'm glad to see some work on stop_machine! I'd really like to rewrite it:
it has some nasty properties at the moment and introduces latency it doesn't
have to.

Among the properties we want in a new stop_machine are:
1) timeout protection (as your patches),
2) arbitrary cpumask for what cpus to run function on,
3) ability to run something other than cpu_relax() on stopped cpus,
4) much lower latency for the common case,
5) simpler than the current code.

I expect to get to this in the next week or so, but please remind me if you
don't see anything. I've applied your patches in the mean time (although #3
needed to be wrapped in #ifdef CONFIG_STOPMACHINE) in case I don't get that
work finished for 2.6.27.

Thanks!
Rusty.
--
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/