Re: 2.7 thoughts

From: Mark Mielke
Date: Fri Oct 10 2003 - 10:52:42 EST


On Fri, Oct 10, 2003 at 08:01:22AM -0700, William Lee Irwin III wrote:
> On Fri, Oct 10, 2003 at 10:48:37AM -0400, Mark Mielke wrote:
> > Perhaps I've naive here, but - with hot-pluggable CPU machines, do you not
> > de-activate the CPU through software first, before pulling the CPU out, at
> > which point it is not in use?
> Well, you deleted my reply, but never mind that.

I wasn't responding to you. You're article just happened to be the one
that I pushed 'g' to... :-)

> This obviously can't work unless the kernel gets some kind of warning.
> Userspace and kernel register state, once lost that way, can't be
> recovered, and if tasks are automatically suspended (e.g. cpu dumps to
> somewhere and a miracle occurs), you'll deadlock if the kernel was in
> a non-preemptible critical section at the time.

Again, I'm perhaps naive here - I've never been able to afford such a
machine with hot-pluggable CPU's, however, I have heard from people who
have used them at work, that you use software (i.e. system calls to the
kernel) to instruct the kernel to no longer schedule tasks for the CPU.
Once the CPU is no longer scheduled for use, you can feel free to unplug
the CPU from the motherboard. Note that I didn't say that the software
approach could *guarantee* immediate success. You wouldn't unplug the
CPU until your had successfully deregistered the CPU from having anything
scheduled for it.

Is this not the way things (should) work?

mark

--
mark@xxxxxxxxx/markm@xxxxxx/markm@xxxxxxxxxxxxxxxxxx __________________________
. . _ ._ . . .__ . . ._. .__ . . . .__ | Neighbourhood Coder
|\/| |_| |_| |/ |_ |\/| | |_ | |/ |_ |
| | | | | \ | \ |__ . | | .|. |__ |__ | \ |__ | Ottawa, Ontario, Canada

One ring to rule them all, one ring to find them, one ring to bring them all
and in the darkness bind them...

http://mark.mielke.cc/

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