diff options
author | Richard Braun <rbraun@sceen.net> | 2018-04-21 10:42:11 +0200 |
---|---|---|
committer | Richard Braun <rbraun@sceen.net> | 2018-04-21 10:49:07 +0200 |
commit | ec4ddf8b95585cc3e340dd06df109f83a23b2d77 (patch) | |
tree | d70e9c7a52c6c5f60e8d971b0eeb4b275d80bb33 /kern/thread.h | |
parent | 89ebd57e0bb3a63f2f794ce41dd4c831b4aeb35c (diff) |
Fix atomic operations argument types
In preparation of the rework of atomic operations, all atomic function
calls are fixed to use fully supported, compatible types. This means
that atomic operations ar erestricted to 32-bit and 64-bit, and that
value types must be strictly compatible with pointer types.
Diffstat (limited to 'kern/thread.h')
-rw-r--r-- | kern/thread.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/kern/thread.h b/kern/thread.h index eba9bf2c..4bead755 100644 --- a/kern/thread.h +++ b/kern/thread.h @@ -288,7 +288,7 @@ thread_ref(struct thread *thread) { unsigned long nr_refs; - nr_refs = atomic_fetch_add(&thread->nr_refs, 1, ATOMIC_RELAXED); + nr_refs = atomic_fetch_add(&thread->nr_refs, 1UL, ATOMIC_RELAXED); assert(nr_refs != (unsigned long)-1); } @@ -297,7 +297,7 @@ thread_unref(struct thread *thread) { unsigned long nr_refs; - nr_refs = atomic_fetch_sub(&thread->nr_refs, 1, ATOMIC_ACQ_REL); + nr_refs = atomic_fetch_sub(&thread->nr_refs, 1UL, ATOMIC_ACQ_REL); assert(nr_refs != 0); if (nr_refs == 1) { |