On Mon, May 02, 2016 at 11:00:49AM +0200, Anna-Maria Gleixner wrote: > Since commit 3b9d6da67e11 ("cpu/hotplug: Fix rollback during error-out > in __cpu_disable()") it is ensured that callbacks of CPU_ONLINE and > CPU_DOWN_PREPARE are processed on the hotplugged CPU. Due to this > work_on_cpu() calls are no longer required. > > Replace work_on_cpu() with a direct call of mips_cdmm_bus_up() or > mips_cdmm_bus_down(). Description of those functions are adapted. > > Cc: Ralf Baechle <ralf@xxxxxxxxxxxxxx> > Cc: linux-mips@xxxxxxxxxxxxxx > Signed-off-by: Anna-Maria Gleixner <anna-maria@xxxxxxxxxxxxx> Thanks, looks reasonable to me, Acked-by: James Hogan <james.hogan@xxxxxxxxxx> Cheers, James > --- > Changes in v2: > - Adapt referenced commit in commit message > > drivers/bus/mips_cdmm.c | 12 +++++++----- > 1 file changed, 7 insertions(+), 5 deletions(-) > > --- a/drivers/bus/mips_cdmm.c > +++ b/drivers/bus/mips_cdmm.c > @@ -599,8 +599,8 @@ BUILD_PERDEV_HELPER(cpu_up) /* i > * mips_cdmm_bus_down() - Tear down the CDMM bus. > * @data: Pointer to unsigned int CPU number. > * > - * This work_on_cpu callback function is executed on a given CPU to call the > - * CDMM driver cpu_down callback for all devices on that CPU. > + * This function is executed on the hotplugged CPU and calls the CDMM > + * driver cpu_down callback for all devices on that CPU. > */ > static long mips_cdmm_bus_down(void *data) > { > @@ -630,7 +630,9 @@ static long mips_cdmm_bus_down(void *dat > * CDMM devices on that CPU, or to call the CDMM driver cpu_up callback for all > * devices already discovered on that CPU. > * > - * It is used during initialisation and when CPUs are brought online. > + * It is used as work_on_cpu callback function during > + * initialisation. When CPUs are brought online the function is > + * invoked directly on the hotplugged CPU. > */ > static long mips_cdmm_bus_up(void *data) > { > @@ -677,10 +679,10 @@ static int mips_cdmm_cpu_notify(struct n > switch (action & ~CPU_TASKS_FROZEN) { > case CPU_ONLINE: > case CPU_DOWN_FAILED: > - work_on_cpu(cpu, mips_cdmm_bus_up, &cpu); > + mips_cdmm_bus_up(&cpu); > break; > case CPU_DOWN_PREPARE: > - work_on_cpu(cpu, mips_cdmm_bus_down, &cpu); > + mips_cdmm_bus_down(&cpu); > break; > default: > return NOTIFY_DONE; >
Attachment:
signature.asc
Description: Digital signature