+ __mutext_unlock(mutex);
+}
+
+void
+mutex_lock_nested(mutex_t* mutex)
+{
+ if (atomic_load(&mutex->lk) && __mutex_check_owner(mutex)) {
+ atomic_fetch_add(&mutex->lk, 1);
+ return;
+ }
+
+ __mutext_lock(mutex);
+}
+
+void
+mutex_unlock_nested(mutex_t* mutex)
+{
+ mutex_unlock_for(mutex, __current->pid);