X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=src%2Fsvm%2Fsvm_fifo.h;h=693691639ba05650d2785ddf9b4dca03de433f36;hb=acd2a6a32cebab70a054e9335e446798538d0524;hp=36158dc5db7a5de664a01fb9eb44e78e449e69f0;hpb=d5b6aa139856a1447f7bc5377058202110eaa4cf;p=vpp.git diff --git a/src/svm/svm_fifo.h b/src/svm/svm_fifo.h index 36158dc5db7..693691639ba 100644 --- a/src/svm/svm_fifo.h +++ b/src/svm/svm_fifo.h @@ -44,7 +44,7 @@ typedef struct u32 nitems; CLIB_CACHE_LINE_ALIGN_MARK (end_cursize); - volatile u8 has_event; /**< non-zero if deq event exists */ + volatile u32 has_event; /**< non-zero if deq event exists */ /* Backpointers */ u32 master_session_index; @@ -103,7 +103,7 @@ always_inline void svm_fifo_unset_event (svm_fifo_t * f) { /* Probably doesn't need to be atomic. Still, better avoid surprises */ - __sync_lock_test_and_set (&f->has_event, 0); + __sync_lock_release (&f->has_event); } svm_fifo_t *svm_fifo_create (u32 data_size_in_bytes);