perf/core: fix parent pid/tid in task exit events
[platform/kernel/linux-rpi.git] / kernel / padata.c
index fda7a70..c4b7743 100644 (file)
@@ -516,7 +516,7 @@ static int padata_replace(struct padata_instance *pinst)
 {
        int notification_mask = 0;
        struct padata_shell *ps;
-       int err;
+       int err = 0;
 
        pinst->flags |= PADATA_RESET;
 
@@ -643,8 +643,8 @@ int padata_set_cpumask(struct padata_instance *pinst, int cpumask_type,
        struct cpumask *serial_mask, *parallel_mask;
        int err = -EINVAL;
 
-       mutex_lock(&pinst->lock);
        get_online_cpus();
+       mutex_lock(&pinst->lock);
 
        switch (cpumask_type) {
        case PADATA_CPU_PARALLEL:
@@ -662,8 +662,8 @@ int padata_set_cpumask(struct padata_instance *pinst, int cpumask_type,
        err =  __padata_set_cpumasks(pinst, parallel_mask, serial_mask);
 
 out:
-       put_online_cpus();
        mutex_unlock(&pinst->lock);
+       put_online_cpus();
 
        return err;
 }