Key points are not available for this paper at this time.
Many concurrency bugs in multi-threaded programs are due to dataraces. There have been many efforts to develop static and dynamic mechanisms to automatically find the data races. Most of the prior work has focused on finding the data races and eliminating the false positives.
Narayanasamy et al. (Sun,) studied this question.