From 8f24f480b1490bc7fc4bda66f15648ca4baf2d74 Mon Sep 17 00:00:00 2001 From: Matheus Date: Fri, 22 Jul 2022 18:30:13 -0300 Subject: [PATCH] spinlocks --- src/include/kernel/spinlock.h | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 src/include/kernel/spinlock.h diff --git a/src/include/kernel/spinlock.h b/src/include/kernel/spinlock.h new file mode 100644 index 00000000..a6e88ff5 --- /dev/null +++ b/src/include/kernel/spinlock.h @@ -0,0 +1,12 @@ +#ifndef _SPINLOCK_H_INCLUDE +#define _SPINLOCK_H_INCLUDE + +static inline void spinlock_acquire(int *lock){ + while(!__sync_bool_compare_and_swap(lock, 0, 1)); +} + +static inline void spinlock_release(int *lock){ + *lock = 0; +} + +#endif