On Wed, Jun 24, 2015 at 07:28:18PM +0200, Peter Zijlstra wrote: > +unlock: > + /* MCS style queue 'unlock' */ > + next = READ_ONCE(entry.next); > + if (!next) { > + if (cmpxchg(&rsp->expedited_queue, &entry, NULL) == &entry) > + goto done; > + while (!(next = READ_ONCE(entry.next))) > + cpu_relax(); > + } > + smp_store_release(&next->done, 1);
Do you suppose: wake_up_process(next->task); would help? :-) > > +done: > put_online_cpus(); > } > EXPORT_SYMBOL_GPL(synchronize_sched_expedited); -- 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/