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/

Reply via email to