diff options
Diffstat (limited to 'vppinfra/vppinfra/elog.c')
-rw-r--r-- | vppinfra/vppinfra/elog.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/vppinfra/vppinfra/elog.c b/vppinfra/vppinfra/elog.c index 3c327481141..222c55fd63e 100644 --- a/vppinfra/vppinfra/elog.c +++ b/vppinfra/vppinfra/elog.c @@ -52,7 +52,10 @@ static inline void elog_lock (elog_main_t * em) static inline void elog_unlock (elog_main_t * em) { if (PREDICT_FALSE(em->lock != 0)) - *em->lock = 0; + { + CLIB_MEMORY_BARRIER(); + *em->lock = 0; + } } /* Non-inline version. */ @@ -168,7 +171,6 @@ word elog_event_type_register (elog_main_t * em, elog_event_type_t * t) } new_event_type (em, l); - elog_unlock(em); return l; |