[PATCH v3 2/3] ARM: mcpm: Implement cpu_kill() to synchronise on powerdown

Nicolas Pitre nicolas.pitre at linaro.org
Tue Oct 1 14:34:37 EDT 2013


On Tue, 1 Oct 2013, Dave Martin wrote:

> On Tue, Oct 01, 2013 at 01:35:17PM -0400, Nicolas Pitre wrote:
> > On Tue, 1 Oct 2013, Dave Martin wrote:
> > 
> > > CPU hotplug and kexec rely on smp_ops.cpu_kill(), which is supposed
> > > to wait for the CPU to park or power down, and perform the last
> > > rites (such as disabling clocks etc., where the platform doesn't do
> > > this automatically).
> > > 
> > > kexec in particular is unsafe without performing this
> > > synchronisation to park secondaries.  Without it, the secondaries
> > > might not be parked when kexec trashes the kernel.
> > > 
> > > There is no generic way to do this synchronisation, so a new mcpm
> > > platform_ops method power_down_finish() is added by this patch.
> > > 
> > > The new method is mandatory.  A platform which provides no way to
> > > detect when CPUs are parked is likely broken.
> > > 
> > > Signed-off-by: Dave Martin <Dave.Martin at arm.com>
> > 
> > Reviewed-by: Nicolas Pitre <nico at linaro.org>
> 
> Thanks!
> 
> I can recommend kexec -- speeds up my reboots no end.
> 
> 
> I can send the MCPM patches to the patch system, but the TC2 patch
> probably ought to go via arm-soc when Russell has a stable branch
> available.

Agreed.  You may ask Russell explicitly for it.

Yet my patch #7842/1 upon which yours are based should go upstream 
before v3.12-final whereas your patches are meant for the next merge 
window.  This should be mentioned explicitly to avoid potential 
confusion.

> Lorenzo's patch fixes something relevant but independent, so should be
> mergeable separately.

Agreed.  And it is on its way already.


Nicolas



More information about the linux-arm-kernel mailing list