split dev_queue
[cor.git] / tools / include / asm-generic / barrier.h
blob6ef36e920ea8a9d9bcbba536981ecfb92df37823
1 /* SPDX-License-Identifier: GPL-2.0-or-later */
2 /*
3 * Copied from the kernel sources to tools/perf/:
5 * Generic barrier definitions.
7 * It should be possible to use these on really simple architectures,
8 * but it serves more as a starting point for new ports.
10 * Copyright (C) 2007 Red Hat, Inc. All Rights Reserved.
11 * Written by David Howells (dhowells@redhat.com)
13 #ifndef __TOOLS_LINUX_ASM_GENERIC_BARRIER_H
14 #define __TOOLS_LINUX_ASM_GENERIC_BARRIER_H
16 #ifndef __ASSEMBLY__
18 #include <linux/compiler.h>
21 * Force strict CPU ordering. And yes, this is required on UP too when we're
22 * talking to devices.
24 * Fall back to compiler barriers if nothing better is provided.
27 #ifndef mb
28 #define mb() barrier()
29 #endif
31 #ifndef rmb
32 #define rmb() mb()
33 #endif
35 #ifndef wmb
36 #define wmb() mb()
37 #endif
39 #endif /* !__ASSEMBLY__ */
40 #endif /* __TOOLS_LINUX_ASM_GENERIC_BARRIER_H */