summaryrefslogtreecommitdiff
path: root/kern/semaphore.h
diff options
context:
space:
mode:
Diffstat (limited to 'kern/semaphore.h')
-rw-r--r--kern/semaphore.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/kern/semaphore.h b/kern/semaphore.h
index 01111856..d7219b4f 100644
--- a/kern/semaphore.h
+++ b/kern/semaphore.h
@@ -33,6 +33,7 @@
#define _KERN_SEMAPHORE_H
#include <kern/assert.h>
+#include <kern/atomic.h>
#include <kern/error.h>
#include <kern/macros.h>
@@ -117,7 +118,7 @@ semaphore_post(struct semaphore *semaphore)
static inline unsigned int
semaphore_getvalue(const struct semaphore *semaphore)
{
- return read_once(semaphore->value);
+ return atomic_load(&semaphore->value, ATOMIC_RELAXED);
}
#endif /* _KERN_SEMAPHORE_H */