Code Review
/
deb_dpdk.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
review
|
tree
raw
|
inline
| side by side
New upstream version 18.08
[deb_dpdk.git]
/
lib
/
librte_eal
/
common
/
include
/
arch
/
x86
/
rte_atomic_32.h
diff --git
a/lib/librte_eal/common/include/arch/x86/rte_atomic_32.h
b/lib/librte_eal/common/include/arch/x86/rte_atomic_32.h
index
fb3abf1
..
a932f35
100644
(file)
--- a/
lib/librte_eal/common/include/arch/x86/rte_atomic_32.h
+++ b/
lib/librte_eal/common/include/arch/x86/rte_atomic_32.h
@@
-98,6
+98,18
@@
rte_atomic64_cmpset(volatile uint64_t *dst, uint64_t exp, uint64_t src)
return res;
}
return res;
}
+static inline uint64_t
+rte_atomic64_exchange(volatile uint64_t *dest, uint64_t val)
+{
+ uint64_t old;
+
+ do {
+ old = *dest;
+ } while (rte_atomic64_cmpset(dest, old, val) == 0);
+
+ return old;
+}
+
static inline void
rte_atomic64_init(rte_atomic64_t *v)
{
static inline void
rte_atomic64_init(rte_atomic64_t *v)
{