diff options
Diffstat (limited to 'lib/tsan/rtl')
-rw-r--r-- | lib/tsan/rtl/tsan_dispatch_defs.h | 14 | ||||
-rw-r--r-- | lib/tsan/rtl/tsan_external.cpp | 2 | ||||
-rw-r--r-- | lib/tsan/rtl/tsan_fd.cpp | 3 | ||||
-rw-r--r-- | lib/tsan/rtl/tsan_interceptors.cpp | 20 | ||||
-rw-r--r-- | lib/tsan/rtl/tsan_interceptors_mac.cpp | 2 | ||||
-rw-r--r-- | lib/tsan/rtl/tsan_interface.cpp | 2 | ||||
-rw-r--r-- | lib/tsan/rtl/tsan_interface.h | 8 | ||||
-rw-r--r-- | lib/tsan/rtl/tsan_interface_ann.cpp | 4 | ||||
-rw-r--r-- | lib/tsan/rtl/tsan_interface_atomic.cpp | 2 | ||||
-rw-r--r-- | lib/tsan/rtl/tsan_interface_inl.h | 2 | ||||
-rw-r--r-- | lib/tsan/rtl/tsan_interface_java.cpp | 2 | ||||
-rw-r--r-- | lib/tsan/rtl/tsan_interface_java.h | 2 | ||||
-rw-r--r-- | lib/tsan/rtl/tsan_md5.cpp | 2 | ||||
-rw-r--r-- | lib/tsan/rtl/tsan_mman.h | 3 | ||||
-rw-r--r-- | lib/tsan/rtl/tsan_new_delete.cpp | 2 | ||||
-rw-r--r-- | lib/tsan/rtl/tsan_rtl.h | 2 | ||||
-rw-r--r-- | lib/tsan/rtl/tsan_rtl_report.cpp | 5 | ||||
-rw-r--r-- | lib/tsan/rtl/tsan_suppressions.cpp | 2 |
18 files changed, 40 insertions, 39 deletions
diff --git a/lib/tsan/rtl/tsan_dispatch_defs.h b/lib/tsan/rtl/tsan_dispatch_defs.h index 6f1d1f75f..298297af3 100644 --- a/lib/tsan/rtl/tsan_dispatch_defs.h +++ b/lib/tsan/rtl/tsan_dispatch_defs.h @@ -31,11 +31,11 @@ typedef void (^dispatch_block_t)(void); typedef void (^dispatch_io_handler_t)(bool done, dispatch_data_t data, int error); -typedef long dispatch_once_t; // NOLINT +typedef long dispatch_once_t; typedef __sanitizer::u64 dispatch_time_t; -typedef int dispatch_fd_t; // NOLINT -typedef unsigned long dispatch_io_type_t; // NOLINT -typedef unsigned long dispatch_io_close_flags_t; // NOLINT +typedef int dispatch_fd_t; +typedef unsigned long dispatch_io_type_t; +typedef unsigned long dispatch_io_close_flags_t; extern "C" { void *dispatch_get_context(dispatch_object_t object); @@ -57,10 +57,10 @@ extern const dispatch_block_t _dispatch_data_destructor_munmap; #endif // Data types used in dispatch APIs -typedef unsigned long size_t; // NOLINT -typedef unsigned long uintptr_t; // NOLINT +typedef unsigned long size_t; +typedef unsigned long uintptr_t; typedef __sanitizer::s64 off_t; typedef __sanitizer::u16 mode_t; -typedef long long_t; // NOLINT +typedef long long_t; #endif // TSAN_DISPATCH_DEFS_H diff --git a/lib/tsan/rtl/tsan_external.cpp b/lib/tsan/rtl/tsan_external.cpp index efc101308..0faa1ee93 100644 --- a/lib/tsan/rtl/tsan_external.cpp +++ b/lib/tsan/rtl/tsan_external.cpp @@ -25,7 +25,7 @@ static TagData registered_tags[kExternalTagMax] = { {}, {"Swift variable", "Swift access race"}, }; -static atomic_uint32_t used_tags{kExternalTagFirstUserAvailable}; // NOLINT. +static atomic_uint32_t used_tags{kExternalTagFirstUserAvailable}; static TagData *GetTagData(uptr tag) { // Invalid/corrupted tag? Better return NULL and let the caller deal with it. if (tag >= atomic_load(&used_tags, memory_order_relaxed)) return nullptr; diff --git a/lib/tsan/rtl/tsan_fd.cpp b/lib/tsan/rtl/tsan_fd.cpp index db01d8095..50a6b5691 100644 --- a/lib/tsan/rtl/tsan_fd.cpp +++ b/lib/tsan/rtl/tsan_fd.cpp @@ -86,7 +86,8 @@ static FdDesc *fddesc(ThreadState *thr, uptr pc, int fd) { else user_free(thr, pc, p, false); } - return &((FdDesc*)l1)[fd % kTableSizeL2]; // NOLINT + FdDesc *fds = reinterpret_cast<FdDesc *>(l1); + return &fds[fd % kTableSizeL2]; } // pd must be already ref'ed. diff --git a/lib/tsan/rtl/tsan_interceptors.cpp b/lib/tsan/rtl/tsan_interceptors.cpp index cf84e2870..4aa9086a2 100644 --- a/lib/tsan/rtl/tsan_interceptors.cpp +++ b/lib/tsan/rtl/tsan_interceptors.cpp @@ -31,8 +31,7 @@ #include "tsan_mman.h" #include "tsan_fd.h" - -using namespace __tsan; // NOLINT +using namespace __tsan; #if SANITIZER_FREEBSD || SANITIZER_MAC #define stdout __stdoutp @@ -41,9 +40,10 @@ using namespace __tsan; // NOLINT #if SANITIZER_NETBSD #define dirfd(dirp) (*(int *)(dirp)) -#define fileno_unlocked(fp) \ - (((__sanitizer_FILE*)fp)->_file == -1 ? -1 : \ - (int)(unsigned short)(((__sanitizer_FILE*)fp)->_file)) // NOLINT +#define fileno_unlocked(fp) \ + (((__sanitizer_FILE *)fp)->_file == -1 \ + ? -1 \ + : (int)(unsigned short)(((__sanitizer_FILE *)fp)->_file)) #define stdout ((__sanitizer_FILE*)&__sF[1]) #define stderr ((__sanitizer_FILE*)&__sF[2]) @@ -133,7 +133,7 @@ const int PTHREAD_BARRIER_SERIAL_THREAD = 1234567; const int PTHREAD_BARRIER_SERIAL_THREAD = -1; #endif const int MAP_FIXED = 0x10; -typedef long long_t; // NOLINT +typedef long long_t; // From /usr/include/unistd.h # define F_ULOCK 0 /* Unlock a previously locked region. */ @@ -723,12 +723,12 @@ TSAN_INTERCEPTOR(uptr, malloc_usable_size, void *p) { } #endif -TSAN_INTERCEPTOR(char*, strcpy, char *dst, const char *src) { // NOLINT - SCOPED_TSAN_INTERCEPTOR(strcpy, dst, src); // NOLINT +TSAN_INTERCEPTOR(char *, strcpy, char *dst, const char *src) { + SCOPED_TSAN_INTERCEPTOR(strcpy, dst, src); uptr srclen = internal_strlen(src); MemoryAccessRange(thr, pc, (uptr)dst, srclen + 1, true); MemoryAccessRange(thr, pc, (uptr)src, srclen + 1, false); - return REAL(strcpy)(dst, src); // NOLINT + return REAL(strcpy)(dst, src); } TSAN_INTERCEPTOR(char*, strncpy, char *dst, char *src, uptr n) { @@ -2660,7 +2660,7 @@ void InitializeInterceptors() { TSAN_MAYBE_INTERCEPT_PVALLOC; TSAN_INTERCEPT(posix_memalign); - TSAN_INTERCEPT(strcpy); // NOLINT + TSAN_INTERCEPT(strcpy); TSAN_INTERCEPT(strncpy); TSAN_INTERCEPT(strdup); diff --git a/lib/tsan/rtl/tsan_interceptors_mac.cpp b/lib/tsan/rtl/tsan_interceptors_mac.cpp index 8b748c110..aa29536d8 100644 --- a/lib/tsan/rtl/tsan_interceptors_mac.cpp +++ b/lib/tsan/rtl/tsan_interceptors_mac.cpp @@ -30,7 +30,7 @@ #include <xpc/xpc.h> #endif // #if defined(__has_include) && __has_include(<xpc/xpc.h>) -typedef long long_t; // NOLINT +typedef long long_t; extern "C" { int getcontext(ucontext_t *ucp) __attribute__((returns_twice)); diff --git a/lib/tsan/rtl/tsan_interface.cpp b/lib/tsan/rtl/tsan_interface.cpp index 845d8c852..2b3a0889b 100644 --- a/lib/tsan/rtl/tsan_interface.cpp +++ b/lib/tsan/rtl/tsan_interface.cpp @@ -17,7 +17,7 @@ #define CALLERPC ((uptr)__builtin_return_address(0)) -using namespace __tsan; // NOLINT +using namespace __tsan; typedef u16 uint16_t; typedef u32 uint32_t; diff --git a/lib/tsan/rtl/tsan_interface.h b/lib/tsan/rtl/tsan_interface.h index fac57809a..b2f0f30c4 100644 --- a/lib/tsan/rtl/tsan_interface.h +++ b/lib/tsan/rtl/tsan_interface.h @@ -90,9 +90,9 @@ SANITIZER_INTERFACE_ATTRIBUTE void __tsan_external_write(void *addr, void *caller_pc, void *tag); SANITIZER_INTERFACE_ATTRIBUTE -void __tsan_read_range(void *addr, unsigned long size); // NOLINT +void __tsan_read_range(void *addr, unsigned long size); SANITIZER_INTERFACE_ATTRIBUTE -void __tsan_write_range(void *addr, unsigned long size); // NOLINT +void __tsan_write_range(void *addr, unsigned long size); // User may provide function that would be called right when TSan detects // an error. The argument 'report' is an opaque pointer that can be used to @@ -187,9 +187,9 @@ namespace __tsan { // These should match declarations from public tsan_interface_atomic.h header. typedef unsigned char a8; -typedef unsigned short a16; // NOLINT +typedef unsigned short a16; typedef unsigned int a32; -typedef unsigned long long a64; // NOLINT +typedef unsigned long long a64; #if !SANITIZER_GO && (defined(__SIZEOF_INT128__) \ || (__clang_major__ * 100 + __clang_minor__ >= 302)) && !defined(__mips64) __extension__ typedef __int128 a128; diff --git a/lib/tsan/rtl/tsan_interface_ann.cpp b/lib/tsan/rtl/tsan_interface_ann.cpp index 288485c17..99516d94b 100644 --- a/lib/tsan/rtl/tsan_interface_ann.cpp +++ b/lib/tsan/rtl/tsan_interface_ann.cpp @@ -24,7 +24,7 @@ #define CALLERPC ((uptr)__builtin_return_address(0)) -using namespace __tsan; // NOLINT +using namespace __tsan; namespace __tsan { @@ -220,7 +220,7 @@ static void ReportMissedExpectedRace(ExpectRace *race) { } } // namespace __tsan -using namespace __tsan; // NOLINT +using namespace __tsan; extern "C" { void INTERFACE_ATTRIBUTE AnnotateHappensBefore(char *f, int l, uptr addr) { diff --git a/lib/tsan/rtl/tsan_interface_atomic.cpp b/lib/tsan/rtl/tsan_interface_atomic.cpp index 730a8e63f..3f459aff5 100644 --- a/lib/tsan/rtl/tsan_interface_atomic.cpp +++ b/lib/tsan/rtl/tsan_interface_atomic.cpp @@ -25,7 +25,7 @@ #include "tsan_interface.h" #include "tsan_rtl.h" -using namespace __tsan; // NOLINT +using namespace __tsan; #if !SANITIZER_GO && __TSAN_HAS_INT128 // Protects emulation of 128-bit atomic operations. diff --git a/lib/tsan/rtl/tsan_interface_inl.h b/lib/tsan/rtl/tsan_interface_inl.h index bf4a16586..193b91b2e 100644 --- a/lib/tsan/rtl/tsan_interface_inl.h +++ b/lib/tsan/rtl/tsan_interface_inl.h @@ -15,7 +15,7 @@ #define CALLERPC ((uptr)__builtin_return_address(0)) -using namespace __tsan; // NOLINT +using namespace __tsan; void __tsan_read1(void *addr) { MemoryRead(cur_thread(), CALLERPC, (uptr)addr, kSizeLog1); diff --git a/lib/tsan/rtl/tsan_interface_java.cpp b/lib/tsan/rtl/tsan_interface_java.cpp index 7d3d32fdb..081c6ff10 100644 --- a/lib/tsan/rtl/tsan_interface_java.cpp +++ b/lib/tsan/rtl/tsan_interface_java.cpp @@ -19,7 +19,7 @@ #include "sanitizer_common/sanitizer_stacktrace.h" #include "sanitizer_common/sanitizer_procmaps.h" -using namespace __tsan; // NOLINT +using namespace __tsan; const jptr kHeapAlignment = 8; diff --git a/lib/tsan/rtl/tsan_interface_java.h b/lib/tsan/rtl/tsan_interface_java.h index 93e67bd10..51b445251 100644 --- a/lib/tsan/rtl/tsan_interface_java.h +++ b/lib/tsan/rtl/tsan_interface_java.h @@ -31,7 +31,7 @@ extern "C" { #endif -typedef unsigned long jptr; // NOLINT +typedef unsigned long jptr; // Must be called before any other callback from Java. void __tsan_java_init(jptr heap_begin, jptr heap_size) INTERFACE_ATTRIBUTE; diff --git a/lib/tsan/rtl/tsan_md5.cpp b/lib/tsan/rtl/tsan_md5.cpp index d146e1cc3..72857b773 100644 --- a/lib/tsan/rtl/tsan_md5.cpp +++ b/lib/tsan/rtl/tsan_md5.cpp @@ -29,7 +29,7 @@ namespace __tsan { SET(n) typedef unsigned int MD5_u32plus; -typedef unsigned long ulong_t; // NOLINT +typedef unsigned long ulong_t; typedef struct { MD5_u32plus lo, hi; diff --git a/lib/tsan/rtl/tsan_mman.h b/lib/tsan/rtl/tsan_mman.h index 313c3bf26..a5280d447 100644 --- a/lib/tsan/rtl/tsan_mman.h +++ b/lib/tsan/rtl/tsan_mman.h @@ -80,10 +80,9 @@ void *internal_alloc(MBlockType typ, uptr sz); void internal_free(void *p); template <typename T> -void DestroyAndFree(T *&p) { // NOLINT +void DestroyAndFree(T *p) { p->~T(); internal_free(p); - p = 0; } } // namespace __tsan diff --git a/lib/tsan/rtl/tsan_new_delete.cpp b/lib/tsan/rtl/tsan_new_delete.cpp index 3ed3c847a..fc44a5221 100644 --- a/lib/tsan/rtl/tsan_new_delete.cpp +++ b/lib/tsan/rtl/tsan_new_delete.cpp @@ -17,7 +17,7 @@ #include "tsan_interceptors.h" #include "tsan_rtl.h" -using namespace __tsan; // NOLINT +using namespace __tsan; namespace std { struct nothrow_t {}; diff --git a/lib/tsan/rtl/tsan_rtl.h b/lib/tsan/rtl/tsan_rtl.h index 53367d9cf..c38fc43a9 100644 --- a/lib/tsan/rtl/tsan_rtl.h +++ b/lib/tsan/rtl/tsan_rtl.h @@ -238,7 +238,7 @@ class Shadow : public FastState { unsigned kS2AccessSize) { bool res = false; u64 diff = s1.addr0() - s2.addr0(); - if ((s64)diff < 0) { // s1.addr0 < s2.addr0 // NOLINT + if ((s64)diff < 0) { // s1.addr0 < s2.addr0 // if (s1.addr0() + size1) > s2.addr0()) return true; if (s1.size() > -diff) res = true; diff --git a/lib/tsan/rtl/tsan_rtl_report.cpp b/lib/tsan/rtl/tsan_rtl_report.cpp index 47b8bf77d..949beac1c 100644 --- a/lib/tsan/rtl/tsan_rtl_report.cpp +++ b/lib/tsan/rtl/tsan_rtl_report.cpp @@ -27,7 +27,7 @@ namespace __tsan { -using namespace __sanitizer; // NOLINT +using namespace __sanitizer; static ReportStack *SymbolizeStack(StackTrace trace); @@ -154,6 +154,7 @@ ScopedReportBase::ScopedReportBase(ReportType typ, uptr tag) { ScopedReportBase::~ScopedReportBase() { ctx->report_mtx.Unlock(); DestroyAndFree(rep_); + rep_ = nullptr; } void ScopedReportBase::AddStack(StackTrace stack, bool suppressable) { @@ -700,7 +701,7 @@ void ReportRace(ThreadState *thr) { rep.AddLocation(addr_min, addr_max - addr_min); #if !SANITIZER_GO - { // NOLINT + { Shadow s(thr->racy_state[1]); if (s.epoch() <= thr->last_sleep_clock.get(s.tid())) rep.AddSleep(thr->last_sleep_stack_id); diff --git a/lib/tsan/rtl/tsan_suppressions.cpp b/lib/tsan/rtl/tsan_suppressions.cpp index 6bf672021..a1c1bf81b 100644 --- a/lib/tsan/rtl/tsan_suppressions.cpp +++ b/lib/tsan/rtl/tsan_suppressions.cpp @@ -50,7 +50,7 @@ static const char *kSuppressionTypes[] = { void InitializeSuppressions() { CHECK_EQ(nullptr, suppression_ctx); - suppression_ctx = new (suppression_placeholder) // NOLINT + suppression_ctx = new (suppression_placeholder) SuppressionContext(kSuppressionTypes, ARRAY_SIZE(kSuppressionTypes)); suppression_ctx->ParseFromFile(flags()->suppressions); #if !SANITIZER_GO |