cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

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_ */