[PATCH] D31553: [tsan] Ignore memory accesses for libignored modules for "external" races

Kuba (Brecka) Mracek via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Mar 31 15:38:15 PDT 2017


kubamracek created this revision.
kubamracek added a project: Sanitizers.

On Darwin, the setting `ignore_noninstrumented_modules` is used to suppress false positives in code that users don't have control of.  The recently added "external" API (which can be used to detect races on objects provided by system libraries, but the race is actually user's fault) ignores this flag and it can report issues in non-instrumented modules.  This patch fixes that.

There's more discussion about this at https://reviews.llvm.org/D28836.


Repository:
  rL LLVM

https://reviews.llvm.org/D31553

Files:
  lib/tsan/rtl/tsan_external.cc
  lib/tsan/rtl/tsan_interceptors.cc
  lib/tsan/rtl/tsan_interceptors.h
  test/tsan/Darwin/external-ignore-noninstrumented.cc
  test/tsan/Darwin/external-lib.cc
  test/tsan/Darwin/external-noninstrumented-module.cc
  test/tsan/Darwin/external.cc

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D31553.93720.patch
Type: text/x-patch
Size: 9423 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170331/9e1a1b43/attachment.bin>


More information about the llvm-commits mailing list