projects
/
userspace-rcu.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Add support for custom memory allocators for rculfhash
[userspace-rcu.git]
/
src
/
urcu-pointer.c
diff --git
a/src/urcu-pointer.c
b/src/urcu-pointer.c
index bc78c10bd255b12780eb36844c7e6383ef01ed51..a42fe87be47c0feea1549ccc91ba9db685342538 100644
(file)
--- a/
src/urcu-pointer.c
+++ b/
src/urcu-pointer.c
@@
-24,19
+24,16
@@
void *rcu_dereference_sym(void *p)
void *rcu_set_pointer_sym(void **p, void *v)
{
void *rcu_set_pointer_sym(void **p, void *v)
{
- cmm_wmb();
- uatomic_set(p, v);
+ uatomic_store(p, v, CMM_RELEASE);
return v;
}
void *rcu_xchg_pointer_sym(void **p, void *v)
{
return v;
}
void *rcu_xchg_pointer_sym(void **p, void *v)
{
- cmm_wmb();
- return uatomic_xchg(p, v);
+ return uatomic_xchg_mo(p, v, CMM_SEQ_CST);
}
void *rcu_cmpxchg_pointer_sym(void **p, void *old, void *_new)
{
}
void *rcu_cmpxchg_pointer_sym(void **p, void *old, void *_new)
{
- cmm_wmb();
- return uatomic_cmpxchg(p, old, _new);
+ return uatomic_cmpxchg_mo(p, old, _new, CMM_SEQ_CST, CMM_RELAXED);
}
}
This page took
0.023772 seconds
and
4
git commands to generate.