"Data race which doesn't seem to modify the data" is actually often not a false positive, they're called "Benign data races" and well, go read the literature, it's often difficult to be sure they're truly "benign" and if there's a subtle reason why they aren't that's now a crazy hard to spot bug in your program.
So yeah, just fix 'em. Most of them you dodged a bullet, and even when you didn't it will now be easier for the next person to reason about the software.
Yeah in fact there is no such thing as a benign data race -- https://web.archive.org/web/20181022150257/https://software....
I agree. That doesn’t mean that TSAN doesn’t have false positives even though they may be rare.
Sure, but nobody is gonna rely on TSAN to determine data races in their code :)