|
From: Julian S. <js...@ac...> - 2014-11-25 14:25:45
|
On 11/25/2014 02:04 PM, Pohl, Hartmut wrote: > As far as I understand, Thread #5 belongs to the second test case and > thus cannot have a data race with thread #3 due to the pthread_join()s. I agree. > I put the annotation at the end of the while (that's what I started with). I looked at this in some detail, but I don't understand what is happening. I did notice that if you comment out the line causing the real race i = 40; then no races are reported. So at least you have a situation where, if there is a race, then (multiple) races are reported, but if you have no race, then no races are reported. To investigate further I'd need to look at Helgrind's memory state machine transitions for |i|. J |