• Ian Lance Taylor's avatar
    cmd/cgo: mark stub functions as no_sanitize_thread · 79ba1e44
    Ian Lance Taylor authored
    When the generated stub functions write back the results to the stack,
    they can in some cases be writing to the same memory on the g0 stack.
    There is no race here (assuming there is no race in the Go code), but
    the thread sanitizer does not know that.  Turn off the thread sanitizer
    for the stub functions to prevent false positive warnings.
    
    Current clang suggests the no_sanitize("thread") attribute, but that
    does not work with clang 3.6 or GCC.  clang 3.6, GCC, and current clang
    all support the no_sanitize_thread attribute, so use that
    unconditionally.
    
    The test case and first version of the patch are from Dmitriy Vyukov.
    
    Change-Id: I80ce92824c6c8cf88ea0fe44f21cf50cf62474c9
    Reviewed-on: https://go-review.googlesource.com/23252
    Run-TryBot: Ian Lance Taylor <iant@golang.org>
    Reviewed-by: 's avatarDmitry Vyukov <dvyukov@google.com>
    TryBot-Result: Gobot Gobot <gobot@golang.org>
    79ba1e44
Name
Last commit
Last update
..
errors Loading commit data...
fortran Loading commit data...
gmp Loading commit data...
life Loading commit data...
nocgo Loading commit data...
stdio Loading commit data...
test Loading commit data...
testasan Loading commit data...
testcarchive Loading commit data...
testcshared Loading commit data...
testgodefs Loading commit data...
testsanitizers Loading commit data...
testshared Loading commit data...
testsigfwd Loading commit data...
testso Loading commit data...
testsovar Loading commit data...
testtls Loading commit data...