Re: [PATCH 15/21] mips: octeon: smp: Convert to hotplug state machine

From: Sebastian Andrzej Siewior
Date: Wed Sep 07 2016 - 10:27:23 EST


On 2016-09-07 09:24:57 [+0100], Matt Redfearn wrote:
> HI Sebastian,
Hi Matt,

> > --- a/include/linux/cpuhotplug.h
> > +++ b/include/linux/cpuhotplug.h
> > @@ -44,6 +44,7 @@ enum cpuhp_state {
> > CPUHP_SH_SH3X_PREPARE,
> > CPUHP_X86_MICRCODE_PREPARE,
> > CPUHP_NOTF_ERR_INJ_PREPARE,
> > + CPUHP_MIPS_CAVIUM_PREPARE,
>
> But I'm curious why we have to create a new state here - this is going to
> get very unwieldy if every variant of every architecture has to have it's
> own state values in that enumeration. Can this use, what I assume is (and
> perhaps could be documented better in include/linux/cpuhotplug.h), the
> generic prepare state CPUHP_NOTIFY_PREPARE?

We can't share the states - one state is for one callback and one
callback only. If you want CPUHP_MIPS_PREPARE and you ensure that this
used only _once_ then this can be arranged.
For online states we have dynamic allocation of ids (which is what most
drivers should use). We don't have this of STARTING + PREPARE callbacks.

> Thanks,
> Matt
>

Sebastian