]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - arch/s390/kernel/perf_cpum_sf.c
Merge tag 'for-v4.7-rc' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux...
[karo-tx-linux.git] / arch / s390 / kernel / perf_cpum_sf.c
index eaab9a7cb3be6a43f38dfa10a1a670656ca110dc..a8e8321664174d9dca65918c5f738e14b4150947 100644 (file)
@@ -1510,7 +1510,6 @@ static void cpumf_measurement_alert(struct ext_code ext_code,
 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 notifier_block *self,
        case CPU_ONLINE:
        case CPU_DOWN_FAILED:
                flags = PMC_INIT;
-               smp_call_function_single(cpu, setup_pmc_cpu, &flags, 1);
+               local_irq_disable();
+               setup_pmc_cpu(&flags);
+               local_irq_enable();
                break;
        case CPU_DOWN_PREPARE:
                flags = PMC_RELEASE;
-               smp_call_function_single(cpu, setup_pmc_cpu, &flags, 1);
+               local_irq_disable();
+               setup_pmc_cpu(&flags);
+               local_irq_enable();
                break;
        default:
                break;