1 /* SPDX-License-Identifier: GPL-2.0 */
3 #ifndef __ASM_S390_RWONCE_H
4 #define __ASM_S390_RWONCE_H
6 #include <linux/compiler_types.h>
9 * Use READ_ONCE_ALIGNED_128() for 128-bit block concurrent (atomic) read
10 * accesses. Note that x must be 128-bit aligned, otherwise a specification
11 * exception is generated.
13 #define READ_ONCE_ALIGNED_128(x) \
20 BUILD_BUG_ON(sizeof(x) != 16); \
22 " lpq %[val],%[_x]\n" \
23 : [val] "=d" (__u.val) \
29 #include <asm-generic/rwonce.h>
31 #endif /* __ASM_S390_RWONCE_H */