Linux Audio

Check our new training course

Loading...
v6.13.7
 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_ */
v4.17
 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_ */