Fix file system racing and ext2 directory insertion (#58)
[lunaix-os.git] / lunaix-os / includes / lunaix / ds / mutex.h
index 162186c05139b0376c552682e483c9ae0ba99e01..304cc6de7cb1ae5a6830cf2722b9acd89a0fa648 100644 (file)
@@ -6,7 +6,7 @@
 
 typedef struct mutex_s
 {
-    atomic_ulong lk;
+    atomic_uint lk;
     pid_t owner;
 } mutex_t;
 
@@ -28,7 +28,16 @@ mutex_lock(mutex_t* mutex);
 void
 mutex_unlock(mutex_t* mutex);
 
+void
+mutex_lock_nested(mutex_t* mutex);
+
+void
+mutex_unlock_nested(mutex_t* mutex);
+
 void
 mutex_unlock_for(mutex_t* mutex, pid_t pid);
 
+bool
+mutex_trylock(mutex_t* mutex);
+
 #endif /* __LUNAIX_MUTEX_H */