mirror of
https://github.com/Ed94/Odin.git
synced 2026-08-04 22:58:46 +00:00
Merge pull request #5803 from Kelimion/fix-incidental-hang
Fix hang, courtesy of cloin.
This commit is contained in:
@@ -480,6 +480,7 @@ void rwlock_acquire_upgrade(RWSpinLock *l) {
|
|||||||
}
|
}
|
||||||
void rwlock_release_upgrade(RWSpinLock *l) {
|
void rwlock_release_upgrade(RWSpinLock *l) {
|
||||||
l->bits.fetch_add(-RWLOCK_UPGRADED, std::memory_order_acq_rel);
|
l->bits.fetch_add(-RWLOCK_UPGRADED, std::memory_order_acq_rel);
|
||||||
|
futex_signal(&l->bits);
|
||||||
}
|
}
|
||||||
|
|
||||||
bool rwlock_try_release_upgrade_and_acquire_write(RWSpinLock *l) {
|
bool rwlock_try_release_upgrade_and_acquire_write(RWSpinLock *l) {
|
||||||
|
|||||||
Reference in New Issue
Block a user