summaryrefslogtreecommitdiffstats
path: root/include/asm-generic/atomic-instrumented.h
diff options
context:
space:
mode:
authorMark Rutland2018-06-21 14:13:07 +0200
committerIngo Molnar2018-06-21 14:22:33 +0200
commitade5ef9280c33993099199c51e2e27c2c4013afd (patch)
tree7a3d8c1a0413817dc82e83a5fbbc1c41c4438f9d /include/asm-generic/atomic-instrumented.h
parentatomics/treewide: Remove atomic_inc_not_zero_hint() (diff)
downloadkernel-qcow2-linux-ade5ef9280c33993099199c51e2e27c2c4013afd.tar.gz
kernel-qcow2-linux-ade5ef9280c33993099199c51e2e27c2c4013afd.tar.xz
kernel-qcow2-linux-ade5ef9280c33993099199c51e2e27c2c4013afd.zip
atomics: Make conditional ops return 'bool'
Some of the atomics return a status value, which is a boolean value describing whether the operation was performed. To make it clear that this is a boolean value, let's update the common fallbacks to return bool, fixing up the return values and comments likewise. At the same time, let's simplify the description of the operations in their respective comments. The instrumented atomics and generic atomic64 implementation are updated accordingly. Note that atomic64_dec_if_positive() doesn't follow the usual test op pattern, and returns the would-be decremented value. This is not changed. Signed-off-by: Mark Rutland <mark.rutland@arm.com> Reviewed-by: Will Deacon <will.deacon@arm.com> Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org> Cc: Boqun Feng <boqun.feng@gmail.com> Cc: Linus Torvalds <torvalds@linux-foundation.org> Cc: Michael Ellerman <mpe@ellerman.id.au> Cc: Thomas Gleixner <tglx@linutronix.de> Link: https://lore.kernel.org/lkml/20180621121321.4761-5-mark.rutland@arm.com Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'include/asm-generic/atomic-instrumented.h')
-rw-r--r--include/asm-generic/atomic-instrumented.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/include/asm-generic/atomic-instrumented.h b/include/asm-generic/atomic-instrumented.h
index b8b14cc2df6c..497faa4a05e3 100644
--- a/include/asm-generic/atomic-instrumented.h
+++ b/include/asm-generic/atomic-instrumented.h
@@ -205,7 +205,7 @@ static __always_inline s64 atomic64_dec_return(atomic64_t *v)
return arch_atomic64_dec_return(v);
}
-static __always_inline s64 atomic64_inc_not_zero(atomic64_t *v)
+static __always_inline bool atomic64_inc_not_zero(atomic64_t *v)
{
kasan_check_write(v, sizeof(*v));
return arch_atomic64_inc_not_zero(v);