Author: bart Date: 2008-02-25 19:58:25 +0000 (Mon, 25 Feb 2008) New Revision: 7462
Log: Added more of Helgrind's regression tests. Added: trunk/exp-drd/tests/hg01_all_ok.stderr.exp trunk/exp-drd/tests/hg01_all_ok.vgtest trunk/exp-drd/tests/hg02_deadlock.stderr.exp trunk/exp-drd/tests/hg02_deadlock.vgtest trunk/exp-drd/tests/hg03_inherit.stderr.exp trunk/exp-drd/tests/hg03_inherit.vgtest trunk/exp-drd/tests/hg04_race.stderr.exp trunk/exp-drd/tests/hg04_race.vgtest trunk/exp-drd/tests/hg05_race2.stderr.exp trunk/exp-drd/tests/hg05_race2.vgtest trunk/exp-drd/tests/hg06_readshared.stderr.exp trunk/exp-drd/tests/hg06_readshared.vgtest trunk/exp-drd/tests/tc01_simple_race.stderr.exp trunk/exp-drd/tests/tc01_simple_race.vgtest trunk/exp-drd/tests/tc02_simple_tls.stderr.exp trunk/exp-drd/tests/tc02_simple_tls.vgtest trunk/exp-drd/tests/tc03_re_excl.stderr.exp trunk/exp-drd/tests/tc03_re_excl.vgtest trunk/exp-drd/tests/tc04_free_lock.stderr.exp trunk/exp-drd/tests/tc04_free_lock.vgtest trunk/exp-drd/tests/tc07_hbl1.stderr.exp trunk/exp-drd/tests/tc07_hbl1.vgtest trunk/exp-drd/tests/tc09_bad_unlock.stderr.exp trunk/exp-drd/tests/tc09_bad_unlock.vgtest trunk/exp-drd/tests/tc10_rec_lock.stderr.exp trunk/exp-drd/tests/tc10_rec_lock.vgtest trunk/exp-drd/tests/tc11_XCHG.stderr.exp trunk/exp-drd/tests/tc11_XCHG.vgtest trunk/exp-drd/tests/tc12_rwl_trivial.stderr.exp trunk/exp-drd/tests/tc12_rwl_trivial.vgtest trunk/exp-drd/tests/tc13_laog1.stderr.exp trunk/exp-drd/tests/tc13_laog1.vgtest trunk/exp-drd/tests/tc15_laog_lockdel.stderr.exp trunk/exp-drd/tests/tc15_laog_lockdel.vgtest trunk/exp-drd/tests/tc16_byterace.stderr.exp trunk/exp-drd/tests/tc16_byterace.vgtest trunk/exp-drd/tests/tc19_shadowmem.stderr.exp trunk/exp-drd/tests/tc19_shadowmem.vgtest trunk/exp-drd/tests/tc20_verifywrap.stderr.exp trunk/exp-drd/tests/tc20_verifywrap.vgtest trunk/exp-drd/tests/tc21_pthonce.stderr.exp trunk/exp-drd/tests/tc21_pthonce.vgtest trunk/exp-drd/tests/tc22_exit_w_lock.stderr.exp trunk/exp-drd/tests/tc22_exit_w_lock.vgtest trunk/exp-drd/tests/tc23_bogus_condwait.stderr.exp trunk/exp-drd/tests/tc23_bogus_condwait.vgtest trunk/exp-drd/tests/tc24_nonzero_sem.stderr.exp trunk/exp-drd/tests/tc24_nonzero_sem.vgtest Modified: trunk/exp-drd/tests/Makefile.am Modified: trunk/exp-drd/tests/Makefile.am =================================================================== --- trunk/exp-drd/tests/Makefile.am 2008-02-25 19:46:14 UTC (rev 7461) +++ trunk/exp-drd/tests/Makefile.am 2008-02-25 19:58:25 UTC (rev 7462) @@ -15,6 +15,18 @@ fp_race.stderr.exp2 \ fp_race2.vgtest \ fp_race2.stdout.exp fp_race2.stderr.exp \ + hg01_all_ok.vgtest \ + hg01_all_ok.stderr.exp \ + hg02_deadlock.vgtest \ + hg02_deadlock.stderr.exp \ + hg03_inherit.vgtest \ + hg03_inherit.stderr.exp \ + hg04_race.vgtest \ + hg04_race.stderr.exp \ + hg05_race2.vgtest \ + hg05_race2.stderr.exp \ + hg06_readshared.vgtest \ + hg06_readshared.stderr.exp \ matinv.vgtest \ matinv.stdout.exp matinv.stderr.exp \ pth_barrier.vgtest \ @@ -35,10 +47,46 @@ sem_as_mutex.stderr.exp sem_as_mutex.stderr.exp2 \ sem_as_mutex2.vgtest \ sem_as_mutex2.stderr.exp \ - tc17_sembar.vgtest \ - tc17_sembar.stderr.exp \ - tc18_semabuse.vgtest \ - tc18_semabuse.stderr.exp \ + tc01_simple_race.vgtest \ + tc01_simple_race.stderr.exp \ + tc02_simple_tls.vgtest \ + tc02_simple_tls.stderr.exp \ + tc03_re_excl.vgtest \ + tc03_re_excl.stderr.exp \ + tc04_free_lock.vgtest \ + tc04_free_lock.stderr.exp \ + tc07_hbl1.vgtest \ + tc07_hbl1.stderr.exp \ + tc09_bad_unlock.vgtest \ + tc09_bad_unlock.stderr.exp \ + tc10_rec_lock.vgtest \ + tc10_rec_lock.stderr.exp \ + tc11_XCHG.vgtest \ + tc11_XCHG.stderr.exp \ + tc12_rwl_trivial.vgtest \ + tc12_rwl_trivial.stderr.exp \ + tc13_laog1.vgtest \ + tc13_laog1.stderr.exp \ + tc15_laog_lockdel.vgtest \ + tc15_laog_lockdel.stderr.exp \ + tc16_byterace.vgtest \ + tc16_byterace.stderr.exp \ + tc17_sembar.vgtest \ + tc17_sembar.stderr.exp \ + tc18_semabuse.vgtest \ + tc18_semabuse.stderr.exp \ + tc19_shadowmem.vgtest \ + tc19_shadowmem.stderr.exp \ + tc20_verifywrap.vgtest \ + tc20_verifywrap.stderr.exp \ + tc21_pthonce.vgtest \ + tc21_pthonce.stderr.exp \ + tc22_exit_w_lock.vgtest \ + tc22_exit_w_lock.stderr.exp \ + tc23_bogus_condwait.vgtest \ + tc23_bogus_condwait.stderr.exp \ + tc24_nonzero_sem.vgtest \ + tc24_nonzero_sem.stderr.exp \ sigalrm.vgtest \ sigalrm.stdout.exp sigalrm.stderr.exp @@ -46,48 +94,150 @@ AM_CPPFLAGS = -I$(top_srcdir) -I$(top_srcdir)/include -I$(top_builddir)/include AM_CXXFLAGS = $(AM_CFLAGS) -check_PROGRAMS = \ - fp_race \ - matinv \ - pth_barrier \ - pth_broadcast \ - pth_cond_race \ - pth_create_chain \ - pth_detached \ - sem_as_mutex \ - sigalrm \ - tc17_sembar \ - tc18_semabuse +check_PROGRAMS = \ + fp_race \ + hg01_all_ok \ + hg02_deadlock \ + hg03_inherit \ + hg04_race \ + hg05_race2 \ + hg06_readshared \ + matinv \ + pth_barrier \ + pth_broadcast \ + pth_cond_race \ + pth_create_chain \ + pth_detached \ + sem_as_mutex \ + sigalrm \ + tc01_simple_race \ + tc02_simple_tls \ + tc03_re_excl \ + tc04_free_lock \ + tc07_hbl1 \ + tc09_bad_unlock \ + tc10_rec_lock \ + tc11_XCHG \ + tc12_rwl_trivial \ + tc13_laog1 \ + tc15_laog_lockdel \ + tc16_byterace \ + tc17_sembar \ + tc18_semabuse \ + tc19_shadowmem \ + tc20_verifywrap \ + tc21_pthonce \ + tc22_exit_w_lock \ + tc23_bogus_condwait \ + tc24_nonzero_sem -fp_race_SOURCES = fp_race.c -fp_race_LDADD = -lpthread +# tc05_simple_race -- result depends on scheduler. +# tc06_two_races -- result depends on scheduler. +# tc08_hbl2 -- result depends on scheduler. +# tc14_laog_dinphils -- hangs. -matinv_SOURCES = matinv.c -matinv_LDADD = -lpthread -lm -pth_barrier_SOURCES = pth_barrier.c -pth_barrier_LDADD = -lpthread +fp_race_SOURCES = fp_race.c +fp_race_LDADD = -lpthread -pth_broadcast_SOURCES = pth_broadcast.c -pth_broadcast_LDADD = -lpthread +hg01_all_ok_SOURCES = ../../helgrind/tests/hg01_all_ok.c +hg01_all_ok_LDADD = -lpthread -pth_cond_race_SOURCES = pth_cond_race.c -pth_cond_race_LDADD = -lpthread +hg02_deadlock_SOURCES = ../../helgrind/tests/hg02_deadlock.c +hg02_deadlock_LDADD = -lpthread -pth_create_chain_SOURCES = pth_create_chain.c -pth_create_chain_LDADD = -lpthread +hg03_inherit_SOURCES = ../../helgrind/tests/hg03_inherit.c +hg03_inherit_LDADD = -lpthread -pth_detached_SOURCES = pth_detached.c -pth_detached_LDADD = -lpthread +hg04_race_SOURCES = ../../helgrind/tests/hg04_race.c +hg04_race_LDADD = -lpthread -sem_as_mutex_SOURCES = sem_as_mutex.c -sem_as_mutex_LDADD = -lpthread +hg05_race2_SOURCES = ../../helgrind/tests/hg05_race2.c +hg05_race2_LDADD = -lpthread -sigalrm_SOURCES = sigalrm.c -sigalrm_LDADD = -lpthread +hg06_readshared_SOURCES = ../../helgrind/tests/hg06_readshared.c +hg06_readshared_LDADD = -lpthread -tc17_sembar_SOURCES = ../../helgrind/tests/tc17_sembar.c -tc17_sembar_LDADD = -lpthread +matinv_SOURCES = matinv.c +matinv_LDADD = -lpthread -lm -tc18_semabuse_SOURCES = ../../helgrind/tests/tc18_semabuse.c -tc18_semabuse_LDADD = -lpthread +pth_barrier_SOURCES = pth_barrier.c +pth_barrier_LDADD = -lpthread + +pth_broadcast_SOURCES = pth_broadcast.c +pth_broadcast_LDADD = -lpthread + +pth_cond_race_SOURCES = pth_cond_race.c +pth_cond_race_LDADD = -lpthread + +pth_create_chain_SOURCES = pth_create_chain.c +pth_create_chain_LDADD = -lpthread + +pth_detached_SOURCES = pth_detached.c +pth_detached_LDADD = -lpthread + +sem_as_mutex_SOURCES = sem_as_mutex.c +sem_as_mutex_LDADD = -lpthread + +sigalrm_SOURCES = sigalrm.c +sigalrm_LDADD = -lpthread + +tc01_simple_race_SOURCES = ../../helgrind/tests/tc01_simple_race.c +tc01_simple_race_LDADD = -lpthread + +tc02_simple_tls_SOURCES = ../../helgrind/tests/tc02_simple_tls.c +tc02_simple_tls_LDADD = -lpthread + +tc03_re_excl_SOURCES = ../../helgrind/tests/tc03_re_excl.c +tc03_re_excl_LDADD = -lpthread + +tc04_free_lock_SOURCES = ../../helgrind/tests/tc04_free_lock.c +tc04_free_lock_LDADD = -lpthread + +tc07_hbl1_SOURCES = ../../helgrind/tests/tc07_hbl1.c +tc07_hbl1_LDADD = -lpthread + +tc09_bad_unlock_SOURCES = ../../helgrind/tests/tc09_bad_unlock.c +tc09_bad_unlock_LDADD = -lpthread + +tc10_rec_lock_SOURCES = ../../helgrind/tests/tc10_rec_lock.c +tc10_rec_lock_LDADD = -lpthread + +tc11_XCHG_SOURCES = ../../helgrind/tests/tc11_XCHG.c +tc11_XCHG_LDADD = -lpthread + +tc12_rwl_trivial_SOURCES = ../../helgrind/tests/tc12_rwl_trivial.c +tc12_rwl_trivial_LDADD = -lpthread + +tc13_laog1_SOURCES = ../../helgrind/tests/tc13_laog1.c +tc13_laog1_LDADD = -lpthread + +tc15_laog_lockdel_SOURCES = ../../helgrind/tests/tc15_laog_lockdel.c +tc15_laog_lockdel_LDADD = -lpthread + +tc16_byterace_SOURCES = ../../helgrind/tests/tc16_byterace.c +tc16_byterace_LDADD = -lpthread + +tc17_sembar_SOURCES = ../../helgrind/tests/tc17_sembar.c +tc17_sembar_LDADD = -lpthread + +tc18_semabuse_SOURCES = ../../helgrind/tests/tc18_semabuse.c +tc18_semabuse_LDADD = -lpthread + +tc19_shadowmem_SOURCES = ../../helgrind/tests/tc19_shadowmem.c +tc19_shadowmem_LDADD = -lpthread + +tc20_verifywrap_SOURCES = ../../helgrind/tests/tc20_verifywrap.c +tc20_verifywrap_LDADD = -lpthread + +tc21_pthonce_SOURCES = ../../helgrind/tests/tc21_pthonce.c +tc21_pthonce_LDADD = -lpthread + +tc22_exit_w_lock_SOURCES = ../../helgrind/tests/tc22_exit_w_lock.c +tc22_exit_w_lock_LDADD = -lpthread + +tc23_bogus_condwait_SOURCES = ../../helgrind/tests/tc23_bogus_condwait.c +tc23_bogus_condwait_LDADD = -lpthread + +tc24_nonzero_sem_SOURCES = ../../helgrind/tests/tc24_nonzero_sem.c +tc24_nonzero_sem_LDADD = -lpthread Added: trunk/exp-drd/tests/hg01_all_ok.stderr.exp =================================================================== --- trunk/exp-drd/tests/hg01_all_ok.stderr.exp (rev 0) +++ trunk/exp-drd/tests/hg01_all_ok.stderr.exp 2008-02-25 19:58:25 UTC (rev 7462) @@ -0,0 +1,3 @@ + + +ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0) Added: trunk/exp-drd/tests/hg01_all_ok.vgtest =================================================================== --- trunk/exp-drd/tests/hg01_all_ok.vgtest (rev 0) +++ trunk/exp-drd/tests/hg01_all_ok.vgtest 2008-02-25 19:58:25 UTC (rev 7462) @@ -0,0 +1 @@ +prog: hg01_all_ok Added: trunk/exp-drd/tests/hg02_deadlock.stderr.exp =================================================================== --- trunk/exp-drd/tests/hg02_deadlock.stderr.exp (rev 0) +++ trunk/exp-drd/tests/hg02_deadlock.stderr.exp 2008-02-25 19:58:25 UTC (rev 7462) @@ -0,0 +1,3 @@ + + +ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0) Added: trunk/exp-drd/tests/hg02_deadlock.vgtest =================================================================== --- trunk/exp-drd/tests/hg02_deadlock.vgtest (rev 0) +++ trunk/exp-drd/tests/hg02_deadlock.vgtest 2008-02-25 19:58:25 UTC (rev 7462) @@ -0,0 +1 @@ +prog: hg02_deadlock Added: trunk/exp-drd/tests/hg03_inherit.stderr.exp =================================================================== --- trunk/exp-drd/tests/hg03_inherit.stderr.exp (rev 0) +++ trunk/exp-drd/tests/hg03_inherit.stderr.exp 2008-02-25 19:58:25 UTC (rev 7462) @@ -0,0 +1,31 @@ + +Thread 3: +Conflicting store by thread 3 at 0x........ size 4 + at 0x........: t2 (hg03_inherit.c:28) + by 0x........: vg_thread_wrapper (drd_intercepts.c:?) + by 0x........: start_thread (in libpthread-?.?.so) + by 0x........: clone (in /...libc...) +Allocation context: unknown +Other segment start (thread 1) + at 0x........: pthread_join (drd_intercepts.c:?) + by 0x........: main (hg03_inherit.c:49) +Other segment end (thread 1) + at 0x........: pthread_join (in libpthread-?.?.so) + by 0x........: pthread_join (drd_intercepts.c:?) + by 0x........: main (hg03_inherit.c:63) + +Conflicting store by thread 3 at 0x........ size 4 + at 0x........: t2 (hg03_inherit.c:29) + by 0x........: vg_thread_wrapper (drd_intercepts.c:?) + by 0x........: start_thread (in libpthread-?.?.so) + by 0x........: clone (in /...libc...) +Allocation context: unknown +Other segment start (thread 1) + at 0x........: pthread_join (drd_intercepts.c:?) + by 0x........: main (hg03_inherit.c:49) +Other segment end (thread 1) + at 0x........: pthread_join (in libpthread-?.?.so) + by 0x........: pthread_join (drd_intercepts.c:?) + by 0x........: main (hg03_inherit.c:63) + +ERROR SUMMARY: 2 errors from 2 contexts (suppressed: 0 from 0) Added: trunk/exp-drd/tests/hg03_inherit.vgtest =================================================================== --- trunk/exp-drd/tests/hg03_inherit.vgtest (rev 0) +++ trunk/exp-drd/tests/hg03_inherit.vgtest 2008-02-25 19:58:25 UTC (rev 7462) @@ -0,0 +1 @@ +prog: hg03_inherit Added: trunk/exp-drd/tests/hg04_race.stderr.exp =================================================================== --- trunk/exp-drd/tests/hg04_race.stderr.exp (rev 0) +++ trunk/exp-drd/tests/hg04_race.stderr.exp 2008-02-25 19:58:25 UTC (rev 7462) @@ -0,0 +1,25 @@ + +Thread 2: +Conflicting load by thread 2 at 0x........ size 4 + at 0x........: th (hg04_race.c:10) + by 0x........: vg_thread_wrapper (drd_intercepts.c:?) + by 0x........: start_thread (in libpthread-?.?.so) + by 0x........: clone (in /...libc...) +Allocation context: unknown +Other segment start (thread 2) + (thread finished, call stack no longer available) +Other segment end (thread 2) + (thread finished, call stack no longer available) + +Conflicting store by thread 2 at 0x........ size 4 + at 0x........: th (hg04_race.c:10) + by 0x........: vg_thread_wrapper (drd_intercepts.c:?) + by 0x........: start_thread (in libpthread-?.?.so) + by 0x........: clone (in /...libc...) +Allocation context: unknown +Other segment start (thread 2) + (thread finished, call stack no longer available) +Other segment end (thread 2) + (thread finished, call stack no longer available) + +ERROR SUMMARY: 2 errors from 2 contexts (suppressed: 0 from 0) Added: trunk/exp-drd/tests/hg04_race.vgtest =================================================================== --- trunk/exp-drd/tests/hg04_race.vgtest (rev 0) +++ trunk/exp-drd/tests/hg04_race.vgtest 2008-02-25 19:58:25 UTC (rev 7462) @@ -0,0 +1 @@ +prog: hg04_race Added: trunk/exp-drd/tests/hg05_race2.stderr.exp =================================================================== --- trunk/exp-drd/tests/hg05_race2.stderr.exp (rev 0) +++ trunk/exp-drd/tests/hg05_race2.stderr.exp 2008-02-25 19:58:25 UTC (rev 7462) @@ -0,0 +1,25 @@ + +Thread 2: +Conflicting load by thread 2 at 0x........ size 4 + at 0x........: th (hg05_race2.c:17) + by 0x........: vg_thread_wrapper (drd_intercepts.c:?) + by 0x........: start_thread (in libpthread-?.?.so) + by 0x........: clone (in /...libc...) +Allocation context: stack of thread 1, offset -5584 +Other segment start (thread 2) + (thread finished, call stack no longer available) +Other segment end (thread 2) + (thread finished, call stack no longer available) + +Conflicting store by thread 2 at 0x........ size 4 + at 0x........: th (hg05_race2.c:17) + by 0x........: vg_thread_wrapper (drd_intercepts.c:?) + by 0x........: start_thread (in libpthread-?.?.so) + by 0x........: clone (in /...libc...) +Allocation context: stack of thread 1, offset -5584 +Other segment start (thread 2) + (thread finished, call stack no longer available) +Other segment end (thread 2) + (thread finished, call stack no longer available) + +ERROR SUMMARY: 2 errors from 2 contexts (suppressed: 0 from 0) Added: trunk/exp-drd/tests/hg05_race2.vgtest =================================================================== --- trunk/exp-drd/tests/hg05_race2.vgtest (rev 0) +++ trunk/exp-drd/tests/hg05_race2.vgtest 2008-02-25 19:58:25 UTC (rev 7462) @@ -0,0 +1 @@ +prog: hg05_race2 Added: trunk/exp-drd/tests/hg06_readshared.stderr.exp =================================================================== --- trunk/exp-drd/tests/hg06_readshared.stderr.exp (rev 0) +++ trunk/exp-drd/tests/hg06_readshared.stderr.exp 2008-02-25 19:58:25 UTC (rev 7462) @@ -0,0 +1,3 @@ + + +ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0) Added: trunk/exp-drd/tests/hg06_readshared.vgtest =================================================================== --- trunk/exp-drd/tests/hg06_readshared.vgtest (rev 0) +++ trunk/exp-drd/tests/hg06_readshared.vgtest 2008-02-25 19:58:25 UTC (rev 7462) @@ -0,0 +1 @@ +prog: hg06_readshared Added: trunk/exp-drd/tests/tc01_simple_race.stderr.exp =================================================================== --- trunk/exp-drd/tests/tc01_simple_race.stderr.exp (rev 0) +++ trunk/exp-drd/tests/tc01_simple_race.stderr.exp 2008-02-25 19:58:25 UTC (rev 7462) @@ -0,0 +1,18 @@ + +Conflicting load by thread 1 at 0x........ size 4 + at 0x........: main (tc01_simple_race.c:28) +Allocation context: unknown +Other segment start (thread 2) + (thread finished, call stack no longer available) +Other segment end (thread 2) + (thread finished, call stack no longer available) + +Conflicting store by thread 1 at 0x........ size 4 + at 0x........: main (tc01_simple_race.c:28) +Allocation context: unknown +Other segment start (thread 2) + (thread finished, call stack no longer available) +Other segment end (thread 2) + (thread finished, call stack no longer available) + +ERROR SUMMARY: 2 errors from 2 contexts (suppressed: 0 from 0) Added: trunk/exp-drd/tests/tc01_simple_race.vgtest =================================================================== --- trunk/exp-drd/tests/tc01_simple_race.vgtest (rev 0) +++ trunk/exp-drd/tests/tc01_simple_race.vgtest 2008-02-25 19:58:25 UTC (rev 7462) @@ -0,0 +1 @@ +prog: tc01_simple_race Added: trunk/exp-drd/tests/tc02_simple_tls.stderr.exp =================================================================== --- trunk/exp-drd/tests/tc02_simple_tls.stderr.exp (rev 0) +++ trunk/exp-drd/tests/tc02_simple_tls.stderr.exp 2008-02-25 19:58:25 UTC (rev 7462) @@ -0,0 +1,3 @@ + + +ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0) Added: trunk/exp-drd/tests/tc02_simple_tls.vgtest =================================================================== --- trunk/exp-drd/tests/tc02_simple_tls.vgtest (rev 0) +++ trunk/exp-drd/tests/tc02_simple_tls.vgtest 2008-02-25 19:58:25 UTC (rev 7462) @@ -0,0 +1 @@ +prog: tc02_simple_tls Added: trunk/exp-drd/tests/tc03_re_excl.stderr.exp =================================================================== --- trunk/exp-drd/tests/tc03_re_excl.stderr.exp (rev 0) +++ trunk/exp-drd/tests/tc03_re_excl.stderr.exp 2008-02-25 19:58:25 UTC (rev 7462) @@ -0,0 +1,3 @@ + + +ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0) Added: trunk/exp-drd/tests/tc03_re_excl.vgtest =================================================================== --- trunk/exp-drd/tests/tc03_re_excl.vgtest (rev 0) +++ trunk/exp-drd/tests/tc03_re_excl.vgtest 2008-02-25 19:58:25 UTC (rev 7462) @@ -0,0 +1 @@ +prog: tc03_re_excl Added: trunk/exp-drd/tests/tc04_free_lock.stderr.exp =================================================================== --- trunk/exp-drd/tests/tc04_free_lock.stderr.exp (rev 0) +++ trunk/exp-drd/tests/tc04_free_lock.stderr.exp 2008-02-25 19:58:25 UTC (rev 7462) @@ -0,0 +1,3 @@ + + +ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0) Added: trunk/exp-drd/tests/tc04_free_lock.vgtest =================================================================== --- trunk/exp-drd/tests/tc04_free_lock.vgtest (rev 0) +++ trunk/exp-drd/tests/tc04_free_lock.vgtest 2008-02-25 19:58:25 UTC (rev 7462) @@ -0,0 +1 @@ +prog: tc04_free_lock Added: trunk/exp-drd/tests/tc07_hbl1.stderr.exp =================================================================== --- trunk/exp-drd/tests/tc07_hbl1.stderr.exp (rev 0) +++ trunk/exp-drd/tests/tc07_hbl1.stderr.exp 2008-02-25 19:58:25 UTC (rev 7462) @@ -0,0 +1,18 @@ + +Conflicting load by thread 1 at 0x........ size 4 + at 0x........: main (tc07_hbl1.c:68) +Allocation context: unknown +Other segment start (thread 2) + (thread finished, call stack no longer available) +Other segment end (thread 2) + (thread finished, call stack no longer available) + +Conflicting store by thread 1 at 0x........ size 4 + at 0x........: main (tc07_hbl1.c:68) +Allocation context: unknown +Other segment start (thread 2) + (thread finished, call stack no longer available) +Other segment end (thread 2) + (thread finished, call stack no longer available) + +ERROR SUMMARY: 2 errors from 2 contexts (suppressed: 0 from 0) Added: trunk/exp-drd/tests/tc07_hbl1.vgtest =================================================================== --- trunk/exp-drd/tests/tc07_hbl1.vgtest (rev 0) +++ trunk/exp-drd/tests/tc07_hbl1.vgtest 2008-02-25 19:58:25 UTC (rev 7462) @@ -0,0 +1 @@ +prog: tc07_hbl1 Added: trunk/exp-drd/tests/tc09_bad_unlock.stderr.exp =================================================================== --- trunk/exp-drd/tests/tc09_bad_unlock.stderr.exp (rev 0) +++ trunk/exp-drd/tests/tc09_bad_unlock.stderr.exp 2008-02-25 19:58:25 UTC (rev 7462) @@ -0,0 +1,40 @@ + +Attempt to unlock a mutex that is not locked / mutex 0x........ (recursion count -1, owner 1) + at 0x........: pthread_mutex_unlock (drd_intercepts.c:?) + by 0x........: nearly_main (tc09_bad_unlock.c:27) + by 0x........: main (tc09_bad_unlock.c:49) + +Thread 2: +Mutex not unlocked by owner thread / mutex 0x........ (recursion count 1, owner 1) + at 0x........: pthread_mutex_unlock (drd_intercepts.c:?) + by 0x........: child_fn (tc09_bad_unlock.c:11) + by 0x........: vg_thread_wrapper (drd_intercepts.c:?) + by 0x........: start_thread (in libpthread-?.?.so) + by 0x........: clone (in /...libc...) + +Thread 1: +Not a mutex / mutex 0x........ (recursion count 0, owner 0) + at 0x........: pthread_mutex_unlock (drd_intercepts.c:?) + by 0x........: nearly_main (tc09_bad_unlock.c:41) + by 0x........: main (tc09_bad_unlock.c:49) + +Attempt to unlock a mutex that is not locked / mutex 0x........ (recursion count -1, owner 1) + at 0x........: pthread_mutex_unlock (drd_intercepts.c:?) + by 0x........: nearly_main (tc09_bad_unlock.c:27) + by 0x........: main (tc09_bad_unlock.c:50) + +Thread 2: +Mutex not unlocked by owner thread / mutex 0x........ (recursion count 1, owner 1) + at 0x........: pthread_mutex_unlock (drd_intercepts.c:?) + by 0x........: child_fn (tc09_bad_unlock.c:11) + by 0x........: vg_thread_wrapper (drd_intercepts.c:?) + by 0x........: start_thread (in libpthread-?.?.so) + by 0x........: clone (in /...libc...) + +Thread 1: +Not a mutex / mutex 0x........ (recursion count 0, owner 0) + at 0x........: pthread_mutex_unlock (drd_intercepts.c:?) + by 0x........: nearly_main (tc09_bad_unlock.c:41) + by 0x........: main (tc09_bad_unlock.c:50) + +ERROR SUMMARY: 6 errors from 6 contexts (suppressed: 0 from 0) Added: trunk/exp-drd/tests/tc09_bad_unlock.vgtest =================================================================== --- trunk/exp-drd/tests/tc09_bad_unlock.vgtest (rev 0) +++ trunk/exp-drd/tests/tc09_bad_unlock.vgtest 2008-02-25 19:58:25 UTC (rev 7462) @@ -0,0 +1 @@ +prog: tc09_bad_unlock Added: trunk/exp-drd/tests/tc10_rec_lock.stderr.exp =================================================================== --- trunk/exp-drd/tests/tc10_rec_lock.stderr.exp (rev 0) +++ trunk/exp-drd/tests/tc10_rec_lock.stderr.exp 2008-02-25 19:58:25 UTC (rev 7462) @@ -0,0 +1,14 @@ + +before lock #1 +before lock #2 +before lock #3 +before unlock #1 +before unlock #2 +before unlock #3 +before unlock #4 +Attempt to unlock a mutex that is not locked / mutex 0x........ (recursion count -1, owner 1) + at 0x........: pthread_mutex_unlock (drd_intercepts.c:?) + by 0x........: nearly_main (tc10_rec_lock.c:42) + by 0x........: main (tc10_rec_lock.c:47) + +ERROR SUMMARY: 1 errors from 1 contexts (suppressed: 0 from 0) Added: trunk/exp-drd/tests/tc10_rec_lock.vgtest =================================================================== --- trunk/exp-drd/tests/tc10_rec_lock.vgtest (rev 0) +++ trunk/exp-drd/tests/tc10_rec_lock.vgtest 2008-02-25 19:58:25 UTC (rev 7462) @@ -0,0 +1 @@ +prog: tc10_rec_lock Added: trunk/exp-drd/tests/tc11_XCHG.stderr.exp =================================================================== --- trunk/exp-drd/tests/tc11_XCHG.stderr.exp (rev 0) +++ trunk/exp-drd/tests/tc11_XCHG.stderr.exp 2008-02-25 19:58:25 UTC (rev 7462) @@ -0,0 +1,18 @@ + +Conflicting load by thread 1 at 0x........ size 4 + at 0x........: main (tc11_XCHG.c:78) +Allocation context: unknown +Other segment start (thread 2) + (thread finished, call stack no longer available) +Other segment end (thread 2) + (thread finished, call stack no longer available) + +Conflicting store by thread 1 at 0x........ size 4 + at 0x........: main (tc11_XCHG.c:78) +Allocation context: unknown +Other segment start (thread 2) + (thread finished, call stack no longer available) +Other segment end (thread 2) + (thread finished, call stack no longer available) + +ERROR SUMMARY: 2 errors from 2 contexts (suppressed: 0 from 0) Added: trunk/exp-drd/tests/tc11_XCHG.vgtest =================================================================== --- trunk/exp-drd/tests/tc11_XCHG.vgtest (rev 0) +++ trunk/exp-drd/tests/tc11_XCHG.vgtest 2008-02-25 19:58:25 UTC (rev 7462) @@ -0,0 +1 @@ +prog: tc11_XCHG Added: trunk/exp-drd/tests/tc12_rwl_trivial.stderr.exp =================================================================== --- trunk/exp-drd/tests/tc12_rwl_trivial.stderr.exp (rev 0) +++ trunk/exp-drd/tests/tc12_rwl_trivial.stderr.exp 2008-02-25 19:58:25 UTC (rev 7462) @@ -0,0 +1,3 @@ + + +ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0) Added: trunk/exp-drd/tests/tc12_rwl_trivial.vgtest =================================================================== --- trunk/exp-drd/tests/tc12_rwl_trivial.vgtest (rev 0) +++ trunk/exp-drd/tests/tc12_rwl_trivial.vgtest 2008-02-25 19:58:25 UTC (rev 7462) @@ -0,0 +1 @@ +prog: tc12_rwl_trivial Added: trunk/exp-drd/tests/tc13_laog1.stderr.exp =================================================================== --- trunk/exp-drd/tests/tc13_laog1.stderr.exp (rev 0) +++ trunk/exp-drd/tests/tc13_laog1.stderr.exp 2008-02-25 19:58:25 UTC (rev 7462) @@ -0,0 +1,3 @@ + + +ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0) Added: trunk/exp-drd/tests/tc13_laog1.vgtest =================================================================== --- trunk/exp-drd/tests/tc13_laog1.vgtest (rev 0) +++ trunk/exp-drd/tests/tc13_laog1.vgtest 2008-02-25 19:58:25 UTC (rev 7462) @@ -0,0 +1 @@ +prog: tc13_laog1 Added: trunk/exp-drd/tests/tc15_laog_lockdel.stderr.exp =================================================================== --- trunk/exp-drd/tests/tc15_laog_lockdel.stderr.exp (rev 0) +++ trunk/exp-drd/tests/tc15_laog_lockdel.stderr.exp 2008-02-25 19:58:25 UTC (rev 7462) @@ -0,0 +1,8 @@ + +Establish order 1 -> 2 +Try order 2 -> 1. This gives an error. +Free 2 and re-allocate it. This gives it a new identity, +so a second locking sequence 2 -> 1 should now be OK. +done + +ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0) Added: trunk/exp-drd/tests/tc15_laog_lockdel.vgtest =================================================================== --- trunk/exp-drd/tests/tc15_laog_lockdel.vgtest (rev 0) +++ trunk/exp-drd/tests/tc15_laog_lockdel.vgtest 2008-02-25 19:58:25 UTC (rev 7462) @@ -0,0 +1 @@ +prog: tc15_laog_lockdel Added: trunk/exp-drd/tests/tc16_byterace.stderr.exp =================================================================== --- trunk/exp-drd/tests/tc16_byterace.stderr.exp (rev 0) +++ trunk/exp-drd/tests/tc16_byterace.stderr.exp 2008-02-25 19:58:25 UTC (rev 7462) @@ -0,0 +1,18 @@ + +Conflicting load by thread 1 at 0x........ size 1 + at 0x........: main (tc16_byterace.c:34) +Allocation context: unknown +Other segment start (thread 2) + (thread finished, call stack no longer available) +Other segment end (thread 2) + (thread finished, call stack no longer available) + +Conflicting store by thread 1 at 0x........ size 1 + at 0x........: main (tc16_byterace.c:34) +Allocation context: unknown +Other segment start (thread 2) + (thread finished, call stack no longer available) +Other segment end (thread 2) + (thread finished, call stack no longer available) + +ERROR SUMMARY: 2 errors from 2 contexts (suppressed: 0 from 0) Added: trunk/exp-drd/tests/tc16_byterace.vgtest =================================================================== --- trunk/exp-drd/tests/tc16_byterace.vgtest (rev 0) +++ trunk/exp-drd/tests/tc16_byterace.vgtest 2008-02-25 19:58:25 UTC (rev 7462) @@ -0,0 +1 @@ +prog: tc16_byterace Added: trunk/exp-drd/tests/tc19_shadowmem.stderr.exp =================================================================== --- trunk/exp-drd/tests/tc19_shadowmem.stderr.exp (rev 0) +++ trunk/exp-drd/tests/tc19_shadowmem.stderr.exp 2008-02-25 19:58:25 UTC (rev 7462) @@ -0,0 +1,2 @@ +valgrind: Bad option '--cmp-race-err-addrs=yes'; aborting. +valgrind: Use --help for more information. Added: trunk/exp-drd/tests/tc19_shadowmem.vgtest =================================================================== --- trunk/exp-drd/tests/tc19_shadowmem.vgtest (rev 0) +++ trunk/exp-drd/tests/tc19_shadowmem.vgtest 2008-02-25 19:58:25 UTC (rev 7462) @@ -0,0 +1,2 @@ +prog: tc19_shadowmem +vgopts: --cmp-race-err-addrs=yes --error-limit=no Added: trunk/exp-drd/tests/tc20_verifywrap.stderr.exp =================================================================== --- trunk/exp-drd/tests/tc20_verifywrap.stderr.exp (rev 0) +++ trunk/exp-drd/tests/tc20_verifywrap.stderr.exp 2008-02-25 19:58:25 UTC (rev 7462) @@ -0,0 +1,63 @@ + + + +------ This is output for >= glibc 2.4 ------ + +---------------- pthread_create/join ---------------- + +Conflicting store by thread 1 at 0x........ size 2 + at 0x........: main (tc20_verifywrap.c:78) +Allocation context: unknown +Other segment start (thread 2) + (thread finished, call stack no longer available) +Other segment end (thread 2) + (thread finished, call stack no longer available) + +---------------- pthread_mutex_lock et al ---------------- + + +Destroying locked mutex / mutex 0x........ (recursion count 1, owner 1) + at 0x........: pthread_mutex_destroy (drd_intercepts.c:?) + by 0x........: main (tc20_verifywrap.c:102) + +Not a mutex / mutex 0x........ (recursion count 0, owner 0) + at 0x........: pthread_mutex_unlock (drd_intercepts.c:?) + by 0x........: main (tc20_verifywrap.c:125) + +---------------- pthread_cond_wait et al ---------------- + + +Not a mutex / mutex 0x........ (recursion count 0, owner 0) + at 0x........: pthread_cond_wait* (drd_intercepts.c:?) + by 0x........: main (tc20_verifywrap.c:147) + +FIXME: can't figure out how to verify wrap of pthread_cond_signal + + +FIXME: can't figure out how to verify wrap of pthread_broadcast_signal + + +---------------- pthread_rwlock_* ---------------- + +(1) no error on next line +(2) no error on next line +(3) ERROR on next line +(4) no error on next line +(5) no error on next line +(6) no error on next line +(7) no error on next line +(8) ERROR on next line + +---------------- sem_* ---------------- + + +FIXME: can't figure out how to verify wrap of sem_destroy + + +FIXME: can't figure out how to verify wrap of sem_post + + +------------ dealloc of mem holding locks ------------ + + +ERROR SUMMARY: 4 errors from 4 contexts (suppressed: 0 from 0) Added: trunk/exp-drd/tests/tc20_verifywrap.vgtest =================================================================== --- trunk/exp-drd/tests/tc20_verifywrap.vgtest (rev 0) +++ trunk/exp-drd/tests/tc20_verifywrap.vgtest 2008-02-25 19:58:25 UTC (rev 7462) @@ -0,0 +1 @@ +prog: tc20_verifywrap Added: trunk/exp-drd/tests/tc21_pthonce.stderr.exp =================================================================== --- trunk/exp-drd/tests/tc21_pthonce.stderr.exp (rev 0) +++ trunk/exp-drd/tests/tc21_pthonce.stderr.exp 2008-02-25 19:58:25 UTC (rev 7462) @@ -0,0 +1,3 @@ + + +ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0) Added: trunk/exp-drd/tests/tc21_pthonce.vgtest =================================================================== --- trunk/exp-drd/tests/tc21_pthonce.vgtest (rev 0) +++ trunk/exp-drd/tests/tc21_pthonce.vgtest 2008-02-25 19:58:25 UTC (rev 7462) @@ -0,0 +1 @@ +prog: tc21_pthonce Added: trunk/exp-drd/tests/tc22_exit_w_lock.stderr.exp =================================================================== --- trunk/exp-drd/tests/tc22_exit_w_lock.stderr.exp (rev 0) +++ trunk/exp-drd/tests/tc22_exit_w_lock.stderr.exp 2008-02-25 19:58:25 UTC (rev 7462) @@ -0,0 +1,123 @@ + +Conflicting load by thread 1 at 0x........ size 4 + at 0x........: __deallocate_stack (in libpthread-?.?.so) + by 0x........: pthread_join (in libpthread-?.?.so) + by 0x........: pthread_join (drd_intercepts.c:?) + by 0x........: main (tc22_exit_w_lock.c:43) +Allocation context: stack_cache_lock (offset 0, size 4) in libpthread-?.?.so, libpthread.so.0:BSS +Other segment start (thread 2) + (thread finished, call stack no longer available) +Other segment end (thread 2) + (thread finished, call stack no longer available) + +Conflicting store by thread 1 at 0x........ size 4 + at 0x........: __deallocate_stack (in libpthread-?.?.so) + by 0x........: pthread_join (in libpthread-?.?.so) + by 0x........: pthread_join (drd_intercepts.c:?) + by 0x........: main (tc22_exit_w_lock.c:43) +Allocation context: stack_cache_lock (offset 0, size 4) in libpthread-?.?.so, libpthread.so.0:BSS +Other segment start (thread 2) + (thread finished, call stack no longer available) +Other segment end (thread 2) + (thread finished, call stack no longer available) + +Conflicting store by thread 1 at 0x........ size 8 + at 0x........: __deallocate_stack (in libpthread-?.?.so) + by 0x........: pthread_join (in libpthread-?.?.so) + by 0x........: pthread_join (drd_intercepts.c:?) + by 0x........: main (tc22_exit_w_lock.c:43) +Allocation context: stack_used (offset 8, size 16) in libpthread-?.?.so, libpthread.so.0:Data +Other segment start (thread 2) + (thread finished, call stack no longer available) +Other segment end (thread 2) + (thread finished, call stack no longer available) + +Conflicting store by thread 1 at 0x........ size 8 + at 0x........: __deallocate_stack (in libpthread-?.?.so) + by 0x........: pthread_join (in libpthread-?.?.so) + by 0x........: pthread_join (drd_intercepts.c:?) + by 0x........: main (tc22_exit_w_lock.c:43) +Allocation context: stack_used (offset 0, size 16) in libpthread-?.?.so, libpthread.so.0:Data +Other segment start (thread 2) + (thread finished, call stack no longer available) +Other segment end (thread 2) + (thread finished, call stack no longer available) + +Conflicting load by thread 1 at 0x........ size 8 + at 0x........: __deallocate_stack (in libpthread-?.?.so) + by 0x........: pthread_join (in libpthread-?.?.so) + by 0x........: pthread_join (drd_intercepts.c:?) + by 0x........: main (tc22_exit_w_lock.c:43) +Allocation context: stack_cache (offset 0, size 16) in libpthread-?.?.so, libpthread.so.0:Data +Other segment start (thread 2) + (thread finished, call stack no longer available) +Other segment end (thread 2) + (thread finished, call stack no longer available) + +Conflicting store by thread 1 at 0x........ size 8 + at 0x........: __deallocate_stack (in libpthread-?.?.so) + by 0x........: pthread_join (in libpthread-?.?.so) + by 0x........: pthread_join (drd_intercepts.c:?) + by 0x........: main (tc22_exit_w_lock.c:43) +Allocation context: stack_cache (offset 8, size 16) in libpthread-?.?.so, libpthread.so.0:Data +Other segment start (thread 2) + (thread finished, call stack no longer available) +Other segment end (thread 2) + (thread finished, call stack no longer available) + +Conflicting store by thread 1 at 0x........ size 8 + at 0x........: __deallocate_stack (in libpthread-?.?.so) + by 0x........: pthread_join (in libpthread-?.?.so) + by 0x........: pthread_join (drd_intercepts.c:?) + by 0x........: main (tc22_exit_w_lock.c:43) +Allocation context: stack_cache (offset 0, size 16) in libpthread-?.?.so, libpthread.so.0:Data +Other segment start (thread 2) + (thread finished, call stack no longer available) +Other segment end (thread 2) + (thread finished, call stack no longer available) + +Conflicting load by thread 1 at 0x........ size 8 + at 0x........: __deallocate_stack (in libpthread-?.?.so) + by 0x........: pthread_join (in libpthread-?.?.so) + by 0x........: pthread_join (drd_intercepts.c:?) + by 0x........: main (tc22_exit_w_lock.c:43) +Allocation context: stack_cache_actsize (offset 0, size 8) in libpthread-?.?.so, libpthread.so.0:BSS +Other segment start (thread 2) + (thread finished, call stack no longer available) +Other segment end (thread 2) + (thread finished, call stack no longer available) + +Conflicting store by thread 1 at 0x........ size 8 + at 0x........: __deallocate_stack (in libpthread-?.?.so) + by 0x........: pthread_join (in libpthread-?.?.so) + by 0x........: pthread_join (drd_intercepts.c:?) + by 0x........: main (tc22_exit_w_lock.c:43) +Allocation context: stack_cache_actsize (offset 0, size 8) in libpthread-?.?.so, libpthread.so.0:BSS +Other segment start (thread 2) + (thread finished, call stack no longer available) +Other segment end (thread 2) + (thread finished, call stack no longer available) + +Conflicting load by thread 1 at 0x........ size 4 + at 0x........: __deallocate_stack (in libpthread-?.?.so) + by 0x........: pthread_join (in libpthread-?.?.so) + by 0x........: pthread_join (drd_intercepts.c:?) + by 0x........: main (tc22_exit_w_lock.c:43) +Allocation context: stack_cache_lock (offset 0, size 4) in libpthread-?.?.so, libpthread.so.0:BSS +Other segment start (thread 2) + (thread finished, call stack no longer available) +Other segment end (thread 2) + (thread finished, call stack no longer available) + +Conflicting store by thread 1 at 0x........ size 4 + at 0x........: __deallocate_stack (in libpthread-?.?.so) + by 0x........: pthread_join (in libpthread-?.?.so) + by 0x........: pthread_join (drd_intercepts.c:?) + by 0x........: main (tc22_exit_w_lock.c:43) +Allocation context: stack_cache_lock (offset 0, size 4) in libpthread-?.?.so, libpthread.so.0:BSS +Other segment start (thread 2) + (thread finished, call stack no longer available) +Other segment end (thread 2) + (thread finished, call stack no longer available) + +ERROR SUMMARY: 11 errors from 11 contexts (suppressed: 0 from 0) Added: trunk/exp-drd/tests/tc22_exit_w_lock.vgtest =================================================================== --- trunk/exp-drd/tests/tc22_exit_w_lock.vgtest (rev 0) +++ trunk/exp-drd/tests/tc22_exit_w_lock.vgtest 2008-02-25 19:58:25 UTC (rev 7462) @@ -0,0 +1 @@ +prog: tc22_exit_w_lock Added: trunk/exp-drd/tests/tc23_bogus_condwait.stderr.exp =================================================================== --- trunk/exp-drd/tests/tc23_bogus_condwait.stderr.exp (rev 0) +++ trunk/exp-drd/tests/tc23_bogus_condwait.stderr.exp 2008-02-25 19:58:25 UTC (rev 7462) @@ -0,0 +1,69 @@ + +Not a mutex / mutex 0x........ (recursion count 0, owner 0) + at 0x........: pthread_cond_wait* (drd_intercepts.c:?) + by 0x........: main (tc23_bogus_condwait.c:69) + +Thread 3: +Race condition: condition variable 0x........ has been signalled but the associated mutex 0x........ is not locked by the signalling thread + at 0x........: pthread_cond_signal* (drd_intercepts.c:?) + by 0x........: rescue_me (tc23_bogus_condwait.c:20) + by 0x........: vg_thread_wrapper (drd_intercepts.c:?) + by 0x........: start_thread (in libpthread-?.?.so) + by 0x........: clone (in /...libc...) + +Thread 1: +Not a mutex / mutex 0x........ (recursion count 0, owner 0) + at 0x........: pthread_cond_wait* (drd_intercepts.c:?) + by 0x........: main (tc23_bogus_condwait.c:69) + +Not a mutex / mutex 0x........ (recursion count 0, owner 0) + at 0x........: pthread_cond_wait* (drd_intercepts.c:?) + by 0x........: main (tc23_bogus_condwait.c:69) + +Not a mutex / mutex 0x........ (recursion count 0, owner 0) + at 0x........: pthread_cond_wait* (drd_intercepts.c:?) + by 0x........: main (tc23_bogus_condwait.c:72) + +Thread 3: +Race condition: condition variable 0x........ has been signalled but the associated mutex 0x........ is not locked by the signalling thread + at 0x........: pthread_cond_signal* (drd_intercepts.c:?) + by 0x........: rescue_me (tc23_bogus_condwait.c:24) + by 0x........: vg_thread_wrapper (drd_intercepts.c:?) + by 0x........: start_thread (in libpthread-?.?.so) + by 0x........: clone (in /...libc...) + +Thread 1: +Not a mutex / mutex 0x........ (recursion count 0, owner 0) + at 0x........: pthread_cond_wait* (drd_intercepts.c:?) + by 0x........: main (tc23_bogus_condwait.c:75) + +Thread 3: +Race condition: condition variable 0x........ has been signalled but the associated mutex 0x........ is not locked by the signalling thread + at 0x........: pthread_cond_signal* (drd_intercepts.c:?) + by 0x........: rescue_me (tc23_bogus_condwait.c:28) + by 0x........: vg_thread_wrapper (drd_intercepts.c:?) + by 0x........: start_thread (in libpthread-?.?.so) + by 0x........: clone (in /...libc...) + +Thread 1: +Mutex not unlocked by owner thread / mutex 0x........ (recursion count 1, owner 2) + at 0x........: pthread_cond_wait* (drd_intercepts.c:?) + by 0x........: main (tc23_bogus_condwait.c:78) + +Thread 3: +Race condition: condition variable 0x........ has been signalled but the associated mutex 0x........ is not locked by the signalling thread + at 0x........: pthread_cond_signal* (drd_intercepts.c:?) + by 0x........: rescue_me (tc23_bogus_condwait.c:32) + by 0x........: vg_thread_wrapper (drd_intercepts.c:?) + by 0x........: start_thread (in libpthread-?.?.so) + by 0x........: clone (in /...libc...) + +Thread 2: +Mutex not unlocked by owner thread / mutex 0x........ (recursion count 1, owner 1) + at 0x........: pthread_mutex_unlock (drd_intercepts.c:?) + by 0x........: grab_the_lock (tc23_bogus_condwait.c:42) + by 0x........: vg_thread_wrapper (drd_intercepts.c:?) + by 0x........: start_thread (in libpthread-?.?.so) + by 0x........: clone (in /...libc...) + +ERROR SUMMARY: 11 errors from 11 contexts (suppressed: 0 from 0) Added: trunk/exp-drd/tests/tc23_bogus_condwait.vgtest =================================================================== --- trunk/exp-drd/tests/tc23_bogus_condwait.vgtest (rev 0) +++ trunk/exp-drd/tests/tc23_bogus_condwait.vgtest 2008-02-25 19:58:25 UTC (rev 7462) @@ -0,0 +1 @@ +prog: tc23_bogus_condwait Added: trunk/exp-drd/tests/tc24_nonzero_sem.stderr.exp =================================================================== --- trunk/exp-drd/tests/tc24_nonzero_sem.stderr.exp (rev 0) +++ trunk/exp-drd/tests/tc24_nonzero_sem.stderr.exp 2008-02-25 19:58:25 UTC (rev 7462) @@ -0,0 +1,2 @@ +valgrind: Bad option '--hg-sanity-flags=111111'; aborting. +valgrind: Use --help for more information. Added: trunk/exp-drd/tests/tc24_nonzero_sem.vgtest =================================================================== --- trunk/exp-drd/tests/tc24_nonzero_sem.vgtest (rev 0) +++ trunk/exp-drd/tests/tc24_nonzero_sem.vgtest 2008-02-25 19:58:25 UTC (rev 7462) @@ -0,0 +1,2 @@ +prog: tc24_nonzero_sem +vgopts: --hg-sanity-flags=111111 ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ Valgrind-developers mailing list Valgrind-developers@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/valgrind-developers