diff options
-rw-r--r-- | include/sbi/riscv_locks.h | 4 | ||||
-rw-r--r-- | lib/sbi/riscv_locks.c | 6 |
2 files changed, 5 insertions, 5 deletions
diff --git a/include/sbi/riscv_locks.h b/include/sbi/riscv_locks.h index 492935f..38d9cbe 100644 --- a/include/sbi/riscv_locks.h +++ b/include/sbi/riscv_locks.h @@ -34,9 +34,9 @@ typedef struct { #define DEFINE_SPIN_LOCK(x) \ spinlock_t SPIN_LOCK_INIT(x) -int spin_lock_check(spinlock_t *lock); +bool spin_lock_check(spinlock_t *lock); -int spin_trylock(spinlock_t *lock); +bool spin_trylock(spinlock_t *lock); void spin_lock(spinlock_t *lock); diff --git a/lib/sbi/riscv_locks.c b/lib/sbi/riscv_locks.c index 75b443b..acab776 100644 --- a/lib/sbi/riscv_locks.c +++ b/lib/sbi/riscv_locks.c @@ -8,7 +8,7 @@ #include <sbi/riscv_barrier.h> #include <sbi/riscv_locks.h> -static inline int spin_lock_unlocked(spinlock_t lock) +static inline bool spin_lock_unlocked(spinlock_t lock) { return lock.owner == lock.next; } @@ -19,7 +19,7 @@ bool spin_lock_check(spinlock_t *lock) return !spin_lock_unlocked(*lock); } -int spin_trylock(spinlock_t *lock) +bool spin_trylock(spinlock_t *lock) { unsigned long inc = 1u << TICKET_SHIFT; unsigned long mask = 0xffffu << TICKET_SHIFT; @@ -42,7 +42,7 @@ int spin_trylock(spinlock_t *lock) : "r"(inc), "r"(mask), "I"(TICKET_SHIFT) : "memory"); - return !l0; + return l0 == 0; } void spin_lock(spinlock_t *lock) |