-
Notifications
You must be signed in to change notification settings - Fork 48
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Thread Sanitizer reports multiple data races #35
Comments
Hi, I have looked at a couple of the warnings and it appears that ThreadSanitizer is not able to handle lockless code. If the reported issues were true positives then I can't imagine that the library would run without failing during all the benchmark tests. In the paper the authors say that "Unless you have lock-free synchronization (which you will have to annotate), every reported race will be real." I understand that it's undesirable that the library causes noise that hides justified warnings in your code though. So I will consider this a feature request to add annotations for the lock-free synchronization, if possible. If you believe you have found a real data race then I'd be very interested to learn about it. |
I have now spent several hours trying to add Failing that, I tried to add So I'm closing this for now but if anybody understands how to use these annotations in a way that works for reckless I'd be happy to know. |
On second thought, I'm reopening this for visibility. |
Hi Mattias!
Thanks for the great library!
Are you aware of the warnings that thread sanitizer reports? They're probably false positives (I hope 😄) but nevertheless they would hide real warnings. Could you please have a look?
Small example:
reckless_tsan.cpp.txt
Build and run like this:
Getting these warnings:
tsan_warnings.txt
The text was updated successfully, but these errors were encountered: