Skip to content

Conversation

abhinavdangeti
Copy link
Member

Change-Id: Ie9ed5b6e7aa58d2a0ab295ef8e99d5b299af9a34

Change-Id: Ie9ed5b6e7aa58d2a0ab295ef8e99d5b299af9a34
@coveralls
Copy link

coveralls commented Jul 29, 2016

Coverage Status

Coverage remained the same at 98.196% when pulling 936821e on abhinavdangeti:master into 4504f8d on couchbase:master.

@abhinavdangeti
Copy link
Member Author

ns-codereview pushed a commit that referenced this pull request Aug 16, 2016
By having the group_count load in CategoryRegistry::getStatus
be memory_order_acquire we avoid a benign TSan race (TSan
cannot introspect that group_count is always valid even when
stale so requires the memory barrier to force it to realise
it's always valid).

WARNING: ThreadSanitizer: data race (pid=90501)
  Read of size 8 at 0x7d0c00005028 by thread T4 (mutexes: write M4934):
    #0 strcmp <null> (memcached+0x0000004781d0)
    #1 phosphor::CategoryRegistry::getStatus(char const*) /home/couchbase/jenkins/workspace/memcached-threadsanitizer-master/phosphor/src/category_registry.cc:40 (libphosphor.so+0x0000000072f2)
    #2 phosphor::TraceLog::getCategoryStatus(char const*) /home/couchbase/jenkins/workspace/memcached-threadsanitizer-master/phosphor/src/trace_log.cc:359 (libphosphor.so+0x0000000130e5)
    #3 McbpConnection::runStateMachinery() /home/couchbase/jenkins/workspace/memcached-threadsanitizer-master/memcached/daemon/connection_mcbp.cc:997 (memcached+0x0000004ff393)
    #4 McbpConnection::runEventLoop(short) /home/couchbase/jenkins/workspace/memcached-threadsanitizer-master/memcached/daemon/connection_mcbp.cc:1274 (memcached+0x000000500800)
    #5 run_event_loop /home/couchbase/jenkins/workspace/memcached-threadsanitizer-master/memcached/daemon/connections.cc:153 (memcached+0x0000005021c6)
    #6 event_handler(int, short, void*) /home/couchbase/jenkins/workspace/memcached-threadsanitizer-master/memcached/daemon/memcached.cc:941 (memcached+0x0000004d19b3)
    #7 event_base_loop <null> (libevent_core-2.0.so.5+0x00000000b357)
    #8 platform_thread_wrap(void*) /home/couchbase/jenkins/workspace/memcached-threadsanitizer-master/platform/src/cb_pthreads.cc:54 (libplatform.so.0.1.0+0x00000000586b)

  Previous write of size 8 at 0x7d0c00005028 by thread T3 (mutexes: write M4931, write M5242):
    #0 operator new(unsigned long) <null> (memcached+0x00000046993d)
    #1 <null> <null> (libstdc++.so.6+0x0000000c0568)
    #2 phosphor::TraceLog::getCategoryStatus(char const*) /home/couchbase/jenkins/workspace/memcached-threadsanitizer-master/phosphor/src/trace_log.cc:359 (libphosphor.so+0x0000000130e5)
    #3 McbpConnection::runStateMachinery() /home/couchbase/jenkins/workspace/memcached-threadsanitizer-master/memcached/daemon/connection_mcbp.cc:997 (memcached+0x0000004ff393)
    #4 McbpConnection::runEventLoop(short) /home/couchbase/jenkins/workspace/memcached-threadsanitizer-master/memcached/daemon/connection_mcbp.cc:1274 (memcached+0x000000500800)
    #5 run_event_loop /home/couchbase/jenkins/workspace/memcached-threadsanitizer-master/memcached/daemon/connections.cc:153 (memcached+0x0000005021c6)
    #6 event_handler(int, short, void*) /home/couchbase/jenkins/workspace/memcached-threadsanitizer-master/memcached/daemon/memcached.cc:941 (memcached+0x0000004d19b3)
    #7 event_base_loop <null> (libevent_core-2.0.so.5+0x00000000b357)
    #8 platform_thread_wrap(void*) /home/couchbase/jenkins/workspace/memcached-threadsanitizer-master/platform/src/cb_pthreads.cc:54 (libplatform.so.0.1.0+0x00000000586b)

Change-Id: I80c52ccf9467b5c9f6b836d1ff4f961d3cb094ce
Reviewed-on: http://review.couchbase.org/66796
Tested-by: buildbot <build@couchbase.com>
Reviewed-by: Dave Rigby <daver@couchbase.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants