Re: [Valgrind-users] virtual inheritance and race conditions

2012-01-09 Thread Joris Koster
users@lists.sourceforge.net Subject: Re: [Valgrind-users] virtual inheritance and race conditions On Mon, Jan 9, 2012 at 2:45 PM, Joris Koster wrote: > joris@grazer:~/tmp/src$ valgrind --version > valgrind-3.6.1-Debian In the 3.7.0 release notes you can see that the following bug has been fixed: 24393

Re: [Valgrind-users] virtual inheritance and race conditions

2012-01-09 Thread Bart Van Assche
On Mon, Jan 9, 2012 at 2:45 PM, Joris Koster wrote: > joris@grazer:~/tmp/src$ valgrind --version > valgrind-3.6.1-Debian In the 3.7.0 release notes you can see that the following bug has been fixed: 243935 Helgrind: incorrect handling of ANNOTATE_HAPPENS_BEFORE()/AFTER() Bart. ---

Re: [Valgrind-users] virtual inheritance and race conditions

2012-01-09 Thread Joris Koster
Mon 1/9/2012 12:19 PM To: Joris Koster Cc: valgrind-users@lists.sourceforge.net Subject: Re: [Valgrind-users] virtual inheritance and race conditions On Mon, Jan 9, 2012 at 10:24 AM, Joris Koster wrote: > Yes I saw those but those didn't do the trick :( Which Valgrind version are you using ?

Re: [Valgrind-users] virtual inheritance and race conditions

2012-01-09 Thread Bart Van Assche
On Mon, Jan 9, 2012 at 10:24 AM, Joris Koster wrote: > Yes I saw those but those didn't do the trick :( Which Valgrind version are you using ? With the trunk version neither Helgrind nor DRD reports any race conditions with the happens before/after annotations in place. Bart. --

Re: [Valgrind-users] virtual inheritance and race conditions

2012-01-09 Thread Joris Koster
Yes I saw those but those didn't do the trick :( or my understanding of how to use these macros is wropng. Maybe I should have left that code in the example ... I tried: void releaseRef() { ANNOTATE_HAPPENS_BEFORE(&m_nRefCnt); int nRefCnt = __sync_add_and_fetch(&m_nRefCnt, -1)

Re: [Valgrind-users] virtual inheritance and race conditions

2012-01-08 Thread Bart Van Assche
On Fri, Jan 6, 2012 at 4:04 PM, Joris Koster wrote: >    void releaseRef() { >        int nRefCnt = __sync_add_and_fetch(&m_nRefCnt, -1); >        if (nRefCnt == 0) { >            delete this; >        } >    } Please read the documentation of ANNOTATE_HAPPENS_BEFORE() and ANNOTATE_HAPPENS_AFTER(

[Valgrind-users] virtual inheritance and race conditions

2012-01-06 Thread Joris Koster
Hi all, While trying to run some of our projects through helgrind, I encountered a race condition which I fail to understand for a 100% but I think is a false positive in my case. I've tried to disable that (assumed) false positive using annotations but in all my attempts helgrind kept reporting t