diff --git a/SyncPrim/sync-4.md b/SyncPrim/sync-4.md index c37fa93..e1d0758 100644 --- a/SyncPrim/sync-4.md +++ b/SyncPrim/sync-4.md @@ -309,6 +309,7 @@ In all of these cases, the `__mutex_lock_common` function will acct like a `sema if (!mutex_is_locked(lock) && (atomic_xchg_acquire(&lock->count, 0) == 1)) goto skip_wait; +``` In a failure case the process which wants to acquire a lock will be added to the waiters list @@ -354,6 +355,7 @@ void __sched mutex_unlock(struct mutex *lock) { __mutex_fastpath_unlock(&lock->count, __mutex_unlock_slowpath); } +``` Implementation of the `__mutex_fastpath_unlock` function is very similar to the implementation of the `__mutex_fastpath_lock` function: diff --git a/contributors.md b/contributors.md index f7cbe93..67884d3 100644 --- a/contributors.md +++ b/contributors.md @@ -85,4 +85,5 @@ Thank you to all contributors: * [Piyush Pangtey](https://github.com/pangteypiyush) * [Alfred Agrell](https://github.com/Alcaro) * [Jakub Wilk](https://github.com/jwilk) -* [Justus Adam](https://github.com/JustusAdam) \ No newline at end of file +* [Justus Adam](https://github.com/JustusAdam) +* [Roy Wellington Ⅳ](https://github.com/thanatos)