Re: [PATCH] stop on cpu lost
From: Nick Piggin
Date: Thu Jun 22 2006 - 15:26:20 EST
Hugh Dickins wrote:
On Thu, 22 Jun 2006, Pavel Machek wrote:
Hm..
Then, there is several ways to manage this sitation.
1. migrate all even if it's not allowed by users
That's what I'd prefer... as swsusp uses cpu hotplug. All the other
options are bad... admin will probably not realize suspend involves
cpu unplugs..
2. kill mis-configured tasks.
3. stop ...
4. cancel cpu-hot-removal.
I'm very reluctant to expose my ignorance by joining this thread;
but what I'd naively expect would, I think, suit swsusp also -
you don't really want tasks to be migrated when resuming?
No. And problem with force migrating things is that we lose the
cpus_allowed mask that has been carefully configured.
For this reason, I'm also in favour of #4, however we would need
a solution for swsusp.
I'd expect tasks bound to the unplugged cpu simply not to be run
until "that" cpu is plugged back in.
Yes, I don't see why swsusp tasks would need to be migrated and
run. OTOH, this would require more swsusp special casing, but
apparently that's encouraged ;)
With proviso that it should be possible to "kill -9" such a task
i.e. it be allowed to run in kernel on a wrong cpu just to exit.
Presumably this is difficult, because unplugging a cpu will also
remove infrastructure which would, for example, allow "ps" to show
such tasks. Perhaps such infrastructure should remain so long as
there are tasks there.
They'll be in the global tasklist, so there should be no reason why
they couldn't be migrated over to an online CPU with taskset. Shouldn't
require any rewrites, IIRC.
But after swsusp comes back up, it will be bringing up the same number
of CPUs as went down, won't it? So you shouldn't get into that
situation where you'd need to kill stuff, should you?
--
SUSE Labs, Novell Inc.
Send instant messages to your online friends http://au.messenger.yahoo.com
-
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/