3 ms·
The tool doesn't understand all lockless techniques, so there will be some false positives. For example, there are some cases where people have used the low-
by tytso 7y ago
The tool doesn't understand all lockless techniques, so there will be some false positives. For example, there are some cases where people have used the low-level primitives barrier() and cmpxchg(), which this tool (not possessing human-level intelligence) can analyze.
Also, not all data races can be exploited into serious bugs (in some cases, some stats might just be incorrect, for example).
That doesn't make the tool useless, of course! Just that one should take the numbers with a grain of salt.
- sanxiyn 7y agoI don't see how any lockless techniques can cause false positives on this tool, since this tool ignores them. The tool instruments plain memory accesses. For each access, with some probability, 1. setup watchpoint, delay, and then delete watchpoint, or, 2. check watchpoint. If there is a matching watchpoint, two threads made "simultaneous" accesses, hence data race.