From 4e5595a089c815febd7a0d42ab62940bf13f73ac Mon Sep 17 00:00:00 2001 From: Kimplul Date: Wed, 29 Dec 2021 18:47:16 +0200 Subject: Preparations for refactoring --- include/apos/lock.h | 3 +++ 1 file changed, 3 insertions(+) (limited to 'include/apos/lock.h') diff --git a/include/apos/lock.h b/include/apos/lock.h index b8983fa..178140b 100644 --- a/include/apos/lock.h +++ b/include/apos/lock.h @@ -2,12 +2,14 @@ #define LOCK_H #include +#include typedef atomic_int spinlock_t; #include static inline void spin_lock(spinlock_t *lck) { + disable_irq(); do { while (atomic_load_explicit(lck, memory_order_acquire)) optional_pause(); @@ -18,6 +20,7 @@ static inline void spin_lock(spinlock_t *lck) static inline void spin_unlock(spinlock_t *lck) { atomic_store_explicit(lck, 0, memory_order_release); + enable_irq(); } #endif /* LOCK_H */ -- cgit v1.3