Re: [PATCH v2] s390/cpum_sf: Remove superfluous SMP function call

2016-05-03 Thread Martin Schwidefsky
On Mon, 2 May 2016 12:43:56 +0200
Heiko Carstens  wrote:

> On Mon, May 02, 2016 at 11:00:12AM +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 SMP
> > function calls are no longer required.
> > 
> > Replace smp_call_function_single() with a direct call of
> > setup_pmc_cpu(). To keep the calling convention, interrupts are
> > explicitly disabled around the call.
> > 
> > Cc: Martin Schwidefsky 
> > Cc: Heiko Carstens 
> > Cc: linux-s...@vger.kernel.org
> > Signed-off-by: Anna-Maria Gleixner 
> > ---
> > Changes in v2:
> > - Adapt referenced commit in commit message
> > 
> >  arch/s390/kernel/perf_cpum_sf.c |9 ++---
> >  1 file changed, 6 insertions(+), 3 deletions(-)
> 
> Acked-by: Heiko Carstens 
> 
> Same here: Martin, can you pick this one up, please?

Applied as well.

-- 
blue skies,
   Martin.

"Reality continues to ruin my life." - Calvin.



Re: [PATCH v2] s390/cpum_sf: Remove superfluous SMP function call

2016-05-03 Thread Martin Schwidefsky
On Mon, 2 May 2016 12:43:56 +0200
Heiko Carstens  wrote:

> On Mon, May 02, 2016 at 11:00:12AM +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 SMP
> > function calls are no longer required.
> > 
> > Replace smp_call_function_single() with a direct call of
> > setup_pmc_cpu(). To keep the calling convention, interrupts are
> > explicitly disabled around the call.
> > 
> > Cc: Martin Schwidefsky 
> > Cc: Heiko Carstens 
> > Cc: linux-s...@vger.kernel.org
> > Signed-off-by: Anna-Maria Gleixner 
> > ---
> > Changes in v2:
> > - Adapt referenced commit in commit message
> > 
> >  arch/s390/kernel/perf_cpum_sf.c |9 ++---
> >  1 file changed, 6 insertions(+), 3 deletions(-)
> 
> Acked-by: Heiko Carstens 
> 
> Same here: Martin, can you pick this one up, please?

Applied as well.

-- 
blue skies,
   Martin.

"Reality continues to ruin my life." - Calvin.



Re: [PATCH v2] s390/cpum_sf: Remove superfluous SMP function call

2016-05-02 Thread Heiko Carstens
On Mon, May 02, 2016 at 11:00:12AM +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 SMP
> function calls are no longer required.
> 
> Replace smp_call_function_single() with a direct call of
> setup_pmc_cpu(). To keep the calling convention, interrupts are
> explicitly disabled around the call.
> 
> Cc: Martin Schwidefsky 
> Cc: Heiko Carstens 
> Cc: linux-s...@vger.kernel.org
> Signed-off-by: Anna-Maria Gleixner 
> ---
> Changes in v2:
>   - Adapt referenced commit in commit message
> 
>  arch/s390/kernel/perf_cpum_sf.c |9 ++---
>  1 file changed, 6 insertions(+), 3 deletions(-)

Acked-by: Heiko Carstens 

Same here: Martin, can you pick this one up, please?



Re: [PATCH v2] s390/cpum_sf: Remove superfluous SMP function call

2016-05-02 Thread Heiko Carstens
On Mon, May 02, 2016 at 11:00:12AM +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 SMP
> function calls are no longer required.
> 
> Replace smp_call_function_single() with a direct call of
> setup_pmc_cpu(). To keep the calling convention, interrupts are
> explicitly disabled around the call.
> 
> Cc: Martin Schwidefsky 
> Cc: Heiko Carstens 
> Cc: linux-s...@vger.kernel.org
> Signed-off-by: Anna-Maria Gleixner 
> ---
> Changes in v2:
>   - Adapt referenced commit in commit message
> 
>  arch/s390/kernel/perf_cpum_sf.c |9 ++---
>  1 file changed, 6 insertions(+), 3 deletions(-)

Acked-by: Heiko Carstens 

Same here: Martin, can you pick this one up, please?



[PATCH v2] s390/cpum_sf: Remove superfluous SMP function call

2016-05-02 Thread Anna-Maria Gleixner
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 SMP
function calls are no longer required.

Replace smp_call_function_single() with a direct call of
setup_pmc_cpu(). To keep the calling convention, interrupts are
explicitly disabled around the call.

Cc: Martin Schwidefsky 
Cc: Heiko Carstens 
Cc: linux-s...@vger.kernel.org
Signed-off-by: Anna-Maria Gleixner 
---
Changes in v2:
- Adapt referenced commit in commit message

 arch/s390/kernel/perf_cpum_sf.c |9 ++---
 1 file changed, 6 insertions(+), 3 deletions(-)

--- a/arch/s390/kernel/perf_cpum_sf.c
+++ b/arch/s390/kernel/perf_cpum_sf.c
@@ -1510,7 +1510,6 @@ static void cpumf_measurement_alert(stru
 static int cpumf_pmu_notifier(struct notifier_block *self,
  unsigned long action, void *hcpu)
 {
-   unsigned int cpu = (long) hcpu;
int flags;
 
/* Ignore the notification if no events are scheduled on the PMU.
@@ -1523,11 +1522,15 @@ static int cpumf_pmu_notifier(struct not
case CPU_ONLINE:
case CPU_DOWN_FAILED:
flags = PMC_INIT;
-   smp_call_function_single(cpu, setup_pmc_cpu, , 1);
+   local_irq_disable();
+   setup_pmc_cpu();
+   local_irq_enable();
break;
case CPU_DOWN_PREPARE:
flags = PMC_RELEASE;
-   smp_call_function_single(cpu, setup_pmc_cpu, , 1);
+   local_irq_disable();
+   setup_pmc_cpu();
+   local_irq_enable();
break;
default:
break;


[PATCH v2] s390/cpum_sf: Remove superfluous SMP function call

2016-05-02 Thread Anna-Maria Gleixner
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 SMP
function calls are no longer required.

Replace smp_call_function_single() with a direct call of
setup_pmc_cpu(). To keep the calling convention, interrupts are
explicitly disabled around the call.

Cc: Martin Schwidefsky 
Cc: Heiko Carstens 
Cc: linux-s...@vger.kernel.org
Signed-off-by: Anna-Maria Gleixner 
---
Changes in v2:
- Adapt referenced commit in commit message

 arch/s390/kernel/perf_cpum_sf.c |9 ++---
 1 file changed, 6 insertions(+), 3 deletions(-)

--- a/arch/s390/kernel/perf_cpum_sf.c
+++ b/arch/s390/kernel/perf_cpum_sf.c
@@ -1510,7 +1510,6 @@ static void cpumf_measurement_alert(stru
 static int cpumf_pmu_notifier(struct notifier_block *self,
  unsigned long action, void *hcpu)
 {
-   unsigned int cpu = (long) hcpu;
int flags;
 
/* Ignore the notification if no events are scheduled on the PMU.
@@ -1523,11 +1522,15 @@ static int cpumf_pmu_notifier(struct not
case CPU_ONLINE:
case CPU_DOWN_FAILED:
flags = PMC_INIT;
-   smp_call_function_single(cpu, setup_pmc_cpu, , 1);
+   local_irq_disable();
+   setup_pmc_cpu();
+   local_irq_enable();
break;
case CPU_DOWN_PREPARE:
flags = PMC_RELEASE;
-   smp_call_function_single(cpu, setup_pmc_cpu, , 1);
+   local_irq_disable();
+   setup_pmc_cpu();
+   local_irq_enable();
break;
default:
break;