On 07/31, Peter Zijlstra wrote: > > + for_each_cpu(cpu, cpumask) > + arch_spin_lock((arch_spinlock_t *)&per_cpu(cpu_stopper.lock, > cpu)); > + > for_each_cpu(cpu, cpumask) { > work = &per_cpu(cpu_stopper.stop_work, cpu); > work->fn = fn; > work->arg = arg; > work->done = done; > - cpu_stop_queue_work(cpu, work); > + __cpu_stop_queue_work(cpu, work); > } > - lg_global_unlock(&stop_cpus_lock); > + > + for_each_cpu(cpu, cpumask) > + arch_spin_unlock((arch_spinlock_t *)&per_cpu(cpu_stopper.lock, > cpu));
Of course, we discussed this before and I think this should work too. However to me this looks more ugly (although better than the current code), and this is what I tried to avoid. But! of course "more ugly" is very much subjective, so I won't really argue if you prefer this change. That said, let me write another email in reply to your initial review. Oleg. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/