File Index
Files and directories
Sign in
FILE

fence.h

File preview with syntax highlighting.

linux-6.19.14/arch/riscv/include/asm/fence.h C
 1/* SPDX-License-Identifier: GPL-2.0-only */
 2#ifndef _ASM_RISCV_FENCE_H
 3#define _ASM_RISCV_FENCE_H
 4
 5#define RISCV_FENCE_ASM(p, s)		"\tfence " #p "," #s "\n"
 6#define RISCV_FENCE(p, s) \
 7	({ __asm__ __volatile__ (RISCV_FENCE_ASM(p, s) : : : "memory"); })
 8
 9#ifdef CONFIG_SMP
10#define RISCV_ACQUIRE_BARRIER		RISCV_FENCE_ASM(r, rw)
11#define RISCV_RELEASE_BARRIER		RISCV_FENCE_ASM(rw, w)
12#define RISCV_FULL_BARRIER		RISCV_FENCE_ASM(rw, rw)
13#else
14#define RISCV_ACQUIRE_BARRIER
15#define RISCV_RELEASE_BARRIER
16#define RISCV_FULL_BARRIER
17#endif
18
19#endif	/* _ASM_RISCV_FENCE_H */
~/ Read-only file preview.