diff options
author | Mikulas Patocka <mpatocka@redhat.com> | 2022-08-26 16:43:51 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2022-08-27 09:49:54 -0700 |
commit | d6ffe6067a54972564552ea45d320fb98db1ac5e (patch) | |
tree | f5e9fe0bc2a8eaa1669802af515b91498ea806af /arch/alpha/include/asm/bitops.h | |
parent | e022620b5d056e822e42eb9bc0f24fcb97389d86 (diff) | |
download | linux-d6ffe6067a54972564552ea45d320fb98db1ac5e.tar.gz linux-d6ffe6067a54972564552ea45d320fb98db1ac5e.tar.bz2 linux-d6ffe6067a54972564552ea45d320fb98db1ac5e.zip |
provide arch_test_bit_acquire for architectures that define test_bit
Some architectures define their own arch_test_bit and they also need
arch_test_bit_acquire, otherwise they won't compile. We also clean up
the code by using the generic test_bit if that is equivalent to the
arch-specific version.
Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
Cc: stable@vger.kernel.org
Fixes: 8238b4579866 ("wait_on_bit: add an acquire memory barrier")
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'arch/alpha/include/asm/bitops.h')
-rw-r--r-- | arch/alpha/include/asm/bitops.h | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/arch/alpha/include/asm/bitops.h b/arch/alpha/include/asm/bitops.h index 492c7713ddae..bafb1c1f0fdc 100644 --- a/arch/alpha/include/asm/bitops.h +++ b/arch/alpha/include/asm/bitops.h @@ -283,11 +283,8 @@ arch___test_and_change_bit(unsigned long nr, volatile unsigned long *addr) return (old & mask) != 0; } -static __always_inline bool -arch_test_bit(unsigned long nr, const volatile unsigned long *addr) -{ - return (1UL & (((const int *) addr)[nr >> 5] >> (nr & 31))) != 0UL; -} +#define arch_test_bit generic_test_bit +#define arch_test_bit_acquire generic_test_bit_acquire /* * ffz = Find First Zero in word. Undefined if no zero exists, |