Re: [PATCH v2] s390/cpum_sf: Remove superfluous SMP function call
On Mon, 2 May 2016 12:43:56 +0200 Heiko Carstenswrote: > 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
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
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
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
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 SchwidefskyCc: 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
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;