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 <r...@linux-mips.org>
> Cc: linux-m...@linux-mips.org
> Signed-off-by: Anna-Maria Gleixner <anna-ma...@linutronix.de>

Thanks, looks reasonable to me,
Acked-by: James Hogan <james.ho...@imgtec.com>

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

Reply via email to