aboutsummaryrefslogtreecommitdiff
path: root/platform/linux-generic/arch/x86/odp/api/abi/sync_inlines.h
diff options
context:
space:
mode:
authorMatias Elo <matias.elo@nokia.com>2023-08-17 15:39:46 +0300
committerGitHub <noreply@github.com>2023-08-17 15:39:46 +0300
commit5d505fde6d4327b27446389699abf3a593c02a17 (patch)
tree937164d89e7b8679a42f0e3705e19243baaf0147 /platform/linux-generic/arch/x86/odp/api/abi/sync_inlines.h
parentde97121a2e3afa072f7c51a0570f4b3bed0236c2 (diff)
parent7a200d709b64e743c002dd9737cd71f54ccc54ac (diff)
Merge ODP v1.42.0.0v1.42.0.0_DPDK_22.11
Merge ODP linux-generic v1.42.0.0 into linux-dpdk.
Diffstat (limited to 'platform/linux-generic/arch/x86/odp/api/abi/sync_inlines.h')
-rw-r--r--platform/linux-generic/arch/x86/odp/api/abi/sync_inlines.h31
1 files changed, 31 insertions, 0 deletions
diff --git a/platform/linux-generic/arch/x86/odp/api/abi/sync_inlines.h b/platform/linux-generic/arch/x86/odp/api/abi/sync_inlines.h
new file mode 100644
index 000000000..bebe6b571
--- /dev/null
+++ b/platform/linux-generic/arch/x86/odp/api/abi/sync_inlines.h
@@ -0,0 +1,31 @@
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright (c) 2023 Nokia
+ */
+
+#ifndef ODP_ARCH_SYNC_INLINES_H_
+#define ODP_ARCH_SYNC_INLINES_H_
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+static inline void _odp_mb_sync(void)
+{
+ __asm__ volatile("mfence" ::: "memory");
+}
+
+static inline void _odp_mb_sync_load(void)
+{
+ __asm__ volatile("lfence" ::: "memory");
+}
+
+static inline void _odp_mb_sync_store(void)
+{
+ __asm__ volatile("sfence" ::: "memory");
+}
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif