kernel/condition_variable: Add a cpu_pause in the RemoveFromVariable loop.
All the other spin-loops have this, so this loop should too.
This commit is contained in:
@@ -147,6 +147,8 @@ ConditionVariableEntry::_RemoveFromVariable()
|
|||||||
// we do that, we may validly use our cached pointer to the variable.
|
// we do that, we may validly use our cached pointer to the variable.
|
||||||
if (try_acquire_spinlock(&variable->fLock))
|
if (try_acquire_spinlock(&variable->fLock))
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
cpu_pause();
|
||||||
}
|
}
|
||||||
|
|
||||||
// We now hold the variable's lock. Remove ourselves.
|
// We now hold the variable's lock. Remove ourselves.
|
||||||
|
|||||||
Reference in New Issue
Block a user