Messages in this thread | | | Date | Tue, 23 Oct 2012 09:30:35 +0800 | From | Tang Chen <> | Subject | Re: [PATCH v2 2/2] Do not change worker's running cpu in cmci_rediscover(). |
| |
On 10/22/2012 06:18 PM, Borislav Petkov wrote: > On Mon, Oct 22, 2012 at 11:33:16AM +0800, Tang Chen wrote: >> I have 2 nodes, node0 and node1. node1 could be hotpluged. >> node0 has cpu0 ~ cpu15, node1 has cpu16 ~ cpu31. >> >> I online all the cpus on node1, and hot-remove node1 directly. > > Hold on, I need to ask here: you soft-online all cores on node1 and > *then* you *hot* *remove* it? So with all cores online you physically > take out the processor from the socket? Am I reading this correctly?
Hi Borislav,
No, it's not like that. I'm sorry to make you confused.
Firstly, let me do a little explanation here. :)
I was doing ACPI based hotplug. In a container device, it contains cpus and memories and so on. I didn't physically remove cpus from hardware. I emulated a SCI with my own test module, and the container_notify_cb() was called, and it recursively remove all the sub-devices.
The "remove" here doesn't mean "taking it away". And of course, when the "remove" is done, you can physically take the whole system board away.
Please refer to this url: http://www.spinics.net/lists/linux-pci/msg17651.html This is the module we are doing the SCI emulation.
In summary, the hotplug process could be like the following:
hot-add(SCI) -> online(softly) -> device working -> offline(softly) -> hot-remove(SCI)
Secondly, in kernel, before a container device is removed, all its sub-devices will be offlined and removed first. So I have all the cpus online, and hot-remove a container(which I think is a node, maybe not) directly. This operation has no problem, I think.
Maybe I should not say container as a node. :)
And again, sorry for the confusion.
Thanks. :)
> > Thanks. >
| |