Messages in this thread |  | | | Date | Mon, 28 Aug 2006 23:19:17 -0700 | | From | Andrew Morton <> | | Subject | Re: [PATCH] cpuset: hotunplug cpus and mems in all cpusets |
On Mon, 28 Aug 2006 23:08:24 -0700 Paul Jackson <pj@sgi.com> wrote:
> The cpuset code handling hot unplug of CPUs or Memory Nodes > was incorrect - it could remove a CPU or Node from the top > cpuset, while leaving it still in some child cpusets. > > One basic rule of cpusets is that each cpusets cpus and mems > are subsets of its parents. The cpuset hot unplug code > violated this rule. > > So the cpuset hotunplug handler must walk down the tree, > removing any removed CPU or Node from all cpusets. > > However, it is not allowed to make a cpusets cpus or mems > become empty. They can only transition from empty to non-empty, > not back. > > So if the last CPU or Node would be removed from a cpuset by > the above walk, we scan back up the cpuset hierarchy, finding > the nearest ancestor that still has something online, and copy > its CPU or Memory placement.
Did you consider failing the hotremove request instead? - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
|  |