On 04/05/2017 09:39, Fam Zheng wrote:
> On Thu, 04/20 14:00, Paolo Bonzini wrote:
>> +    if (atomic_cmpxchg(&mutex->locked, waiters, waiters + 1) != waiters) {
> 
> Is it still useful to try the fast path again if there are now even more
> waiters, i.e.  "atomic_cmpxchg(...) > waiters"?

Probably not.

Paolo

>> +        goto retry_fast_path;
>> +    }
>> +
>> +    qemu_co_mutex_lock_slowpath(ctx, mutex);
>> +    qemu_co_mutex_unlock(mutex);
>> +}
>> +
>>  void coroutine_fn qemu_co_mutex_unlock(CoMutex *mutex)
>>  {
>>      Coroutine *self = qemu_coroutine_self();
>> -- 
>> 2.9.3
>>
>>
>>

Reply via email to