[PATCH] D83625: [TSan] Optimize handling of racy address

Dmitry Vyukov via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Jul 15 03:42:57 PDT 2020


dvyukov added a comment.

In D83625#2150120 <https://reviews.llvm.org/D83625#2150120>, @protze.joachim wrote:

> I agree, that the patch changes the transitive suppression of reports. Unfortunately, this would bring back the overhead of reconstructing the remote stack trace.
>
> As a follow-up patch I was thinking about adding a `suppress_equal_location` flag.  
>  I would only compare the local stack trace with previously reported stack traces in `racy_stacks`.
>  Initially I was thinking about suppress_equal_pc, but especially for wrapper functions, the top pc is function pointer of the wrapper.


Right, it can do more harm.

> Also, I plan to add a `suppress_max_stack_depth=n` flag. The `HandleRacyStacks` function will only compare the top n frames in this case.
>  For race in recursive algorithms, this will allow to remove duplicates with different recursion depth. (For OpenMP, this specifically helps for tasking programs)

What will be the default? What is the useful value for OpenMP programs?


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D83625/new/

https://reviews.llvm.org/D83625





More information about the llvm-commits mailing list