Code Review
/
vpp.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
review
|
tree
raw
|
patch
| inline |
side by side
(parent:
d172a62
)
Fix minor issues in clib_spinlock_unlock()
21/8821/2
author
Dave Barach
<dave@barachs.net>
Sun, 15 Oct 2017 21:20:40 +0000
(17:20 -0400)
committer
Florin Coras
<florin.coras@gmail.com>
Sun, 15 Oct 2017 22:14:15 +0000
(22:14 +0000)
Change-Id: I20ce799c9dd57332c06003b466ee7c36169bce98
Signed-off-by: Dave Barach <dave@barachs.net>
src/vppinfra/lock.h
patch
|
blob
|
history
diff --git
a/src/vppinfra/lock.h
b/src/vppinfra/lock.h
index
0cd2b4f
..
7d24167
100644
(file)
--- a/
src/vppinfra/lock.h
+++ b/
src/vppinfra/lock.h
@@
-71,12
+71,14
@@
clib_spinlock_lock_if_init (clib_spinlock_t * p)
static_always_inline void
clib_spinlock_unlock (clib_spinlock_t * p)
{
- (*p)->lock = 0;
#if CLIB_DEBUG > 0
(*p)->frame_address = 0;
(*p)->pid = 0;
(*p)->thread_index = 0;
#endif
+ /* Make sure all writes are complete before releasing the lock */
+ CLIB_MEMORY_BARRIER ();
+ (*p)->lock = 0;
}
static_always_inline void