ext2-atomic.h (600B)
1/* SPDX-License-Identifier: GPL-2.0 */ 2#ifndef _ASM_GENERIC_BITOPS_EXT2_ATOMIC_H_ 3#define _ASM_GENERIC_BITOPS_EXT2_ATOMIC_H_ 4 5/* 6 * Spinlock based version of ext2 atomic bitops 7 */ 8 9#define ext2_set_bit_atomic(lock, nr, addr) \ 10 ({ \ 11 int ret; \ 12 spin_lock(lock); \ 13 ret = __test_and_set_bit_le(nr, addr); \ 14 spin_unlock(lock); \ 15 ret; \ 16 }) 17 18#define ext2_clear_bit_atomic(lock, nr, addr) \ 19 ({ \ 20 int ret; \ 21 spin_lock(lock); \ 22 ret = __test_and_clear_bit_le(nr, addr); \ 23 spin_unlock(lock); \ 24 ret; \ 25 }) 26 27#endif /* _ASM_GENERIC_BITOPS_EXT2_ATOMIC_H_ */