blob: ecf1c9d8a7cc43e8d9adaffecac83c5b9e37ff27 [file] [log] [blame]
Akinobu Mita765f34f2006-03-26 01:39:16 -08001#ifndef _ASM_GENERIC_BITOPS_EXT2_ATOMIC_H_
2#define _ASM_GENERIC_BITOPS_EXT2_ATOMIC_H_
3
4#define ext2_set_bit_atomic(lock, nr, addr) \
5 ({ \
6 int ret; \
7 spin_lock(lock); \
Akinobu Mitac5653002011-03-23 16:42:04 -07008 ret = __test_and_set_bit_le(nr, addr); \
Akinobu Mita765f34f2006-03-26 01:39:16 -08009 spin_unlock(lock); \
10 ret; \
11 })
12
13#define ext2_clear_bit_atomic(lock, nr, addr) \
14 ({ \
15 int ret; \
16 spin_lock(lock); \
Akinobu Mitac5653002011-03-23 16:42:04 -070017 ret = __test_and_clear_bit_le(nr, addr); \
Akinobu Mita765f34f2006-03-26 01:39:16 -080018 spin_unlock(lock); \
19 ret; \
20 })
21
22#endif /* _ASM_GENERIC_BITOPS_EXT2_ATOMIC_H_ */