forked from Qortal/Brooklyn
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
23 lines
507 B
23 lines
507 B
/* SPDX-License-Identifier: GPL-2.0 */ |
|
#ifndef __BARRIER_H |
|
#define __BARRIER_H |
|
|
|
#define mb() __asm__ __volatile__("mb": : :"memory") |
|
#define rmb() __asm__ __volatile__("mb": : :"memory") |
|
#define wmb() __asm__ __volatile__("wmb": : :"memory") |
|
|
|
#define __smp_load_acquire(p) \ |
|
({ \ |
|
compiletime_assert_atomic_type(*p); \ |
|
__READ_ONCE(*p); \ |
|
}) |
|
|
|
#ifdef CONFIG_SMP |
|
#define __ASM_SMP_MB "\tmb\n" |
|
#else |
|
#define __ASM_SMP_MB |
|
#endif |
|
|
|
#include <asm-generic/barrier.h> |
|
|
|
#endif /* __BARRIER_H */
|
|
|