Re: [PATCH]cpuset: add new API to change cpuset top group's cpus

Shaohua Li
2009-05-19T08:48:52Z

On Tue, May 19, 2009 at 04:40:54PM +0800, Peter Zijlstra wrote:
> On Tue, 2009-05-19 at 15:39 +0800, Shaohua Li wrote:
> > ACPI 4.0 defines processor aggregator device. The device can notify OS to idle
> > some CPUs to save power. This isn't to hot remove cpus, but just makes cpus
> > idle.
> >
> > This patch adds one API to change cpuset top group's cpus. If we want to
> > make one cpu idle, simply remove the cpu from cpuset top group's cpu list,
> > then all tasks will be migrate to other cpus, and other tasks will not be
> > migrated to this cpu again. No functional changes.
> >
> > We will use this API in new ACPI processor aggregator device driver later.
>
> I don't think so. There really is a lot more to do than move processes
> about.
no processor running is good enough for us, we don't care about interrupts/softirq/
timers so far.

> Furthermore, I object to being able to remove online cpus from the top
> cpuset, that just doesn't make sense.
>
> I'd suggest using hotplug for this.
cpu hotplug involves too much things, and we are afraid it's not reliable.
Besides, a hot removed cpu will do a dead loop halt, which isn't power saving
efficient. To make hot removed cpu enters deep C-state is in whish list for a
long time, but still not available. The acpi_processor_idle is a module, and
cpuidle governor potentially can't handle offline cpu.

Thanks,
Shaohua