Suppressed TSan false positive warnings
[libcds.git] / tests / unit / queue / intrusive_queue_reader_writer.cpp
index b5ad38c48f5e01b86e3f1dca14ad25c5f3ac1438..f927113f75b04a30a3da859b4c43b2a551610821 100644 (file)
@@ -85,6 +85,7 @@ namespace queue {
                 for ( typename Queue::value_type * p = m_pStart; p < m_pEnd; ) {
                     p->nNo = i;
                     p->nWriterNo = m_nThreadNo;
+                    CDS_TSAN_ANNOTATE_HAPPENS_BEFORE( &p->nWriterNo );
                     if ( m_Queue.push( *p )) {
                         ++p;
                         ++i;
@@ -170,6 +171,7 @@ namespace queue {
                     if ( p ) {
                         p->nConsumer = m_nThreadNo;
                         ++m_nPopped;
+                        CDS_TSAN_ANNOTATE_HAPPENS_AFTER( &p->nWriterNo );
                         if ( p->nWriterNo < nTotalWriters )
                             m_WriterData[ p->nWriterNo ].push_back( p->nNo );
                         else