1 2 The object at address 0x........ is not a mutex. 3 at 0x........: pthread_cond_wait (drd_pthread_intercepts.c:?) 4 by 0x........: main (tc23_bogus_condwait.c:69) 5 6 Mutex not locked: mutex 0x........, recursion count 0, owner 0. 7 at 0x........: pthread_cond_wait (drd_pthread_intercepts.c:?) 8 by 0x........: main (tc23_bogus_condwait.c:72) 9 mutex 0x........ was first observed at: 10 at 0x........: pthread_mutex_init (drd_pthread_intercepts.c:?) 11 by 0x........: main (tc23_bogus_condwait.c:51) 12 13 Thread 3: 14 Probably a race condition: condition variable 0x........ has been signaled but the associated mutex 0x........ is not locked by the signalling thread. 15 at 0x........: pthread_cond_signal (drd_pthread_intercepts.c:?) 16 by 0x........: rescue_me (tc23_bogus_condwait.c:20) 17 by 0x........: vgDrd_thread_wrapper (drd_pthread_intercepts.c:?) 18 cond 0x........ was first observed at: 19 at 0x........: pthread_cond_init (drd_pthread_intercepts.c:?) 20 by 0x........: main (tc23_bogus_condwait.c:56) 21 mutex 0x........ was first observed at: 22 at 0x........: pthread_mutex_init (drd_pthread_intercepts.c:?) 23 by 0x........: main (tc23_bogus_condwait.c:51) 24 25 Thread 1: 26 The object at address 0x........ is not a mutex. 27 at 0x........: pthread_cond_wait (drd_pthread_intercepts.c:?) 28 by 0x........: main (tc23_bogus_condwait.c:75) 29 rwlock 0x........ was first observed at: 30 at 0x........: pthread_rwlock_init (drd_pthread_intercepts.c:?) 31 by 0x........: main (tc23_bogus_condwait.c:57) 32 33 Mutex not locked by calling thread: mutex 0x........, recursion count 1, owner 2. 34 at 0x........: pthread_cond_wait (drd_pthread_intercepts.c:?) 35 by 0x........: main (tc23_bogus_condwait.c:78) 36 mutex 0x........ was first observed at: 37 at 0x........: pthread_mutex_init (drd_pthread_intercepts.c:?) 38 by 0x........: main (tc23_bogus_condwait.c:53) 39 40 Thread 3: 41 Probably a race condition: condition variable 0x........ has been signaled but the associated mutex 0x........ is not locked by the signalling thread. 42 at 0x........: pthread_cond_signal (drd_pthread_intercepts.c:?) 43 by 0x........: rescue_me (tc23_bogus_condwait.c:24) 44 by 0x........: vgDrd_thread_wrapper (drd_pthread_intercepts.c:?) 45 cond 0x........ was first observed at: 46 at 0x........: pthread_cond_init (drd_pthread_intercepts.c:?) 47 by 0x........: main (tc23_bogus_condwait.c:56) 48 mutex 0x........ was first observed at: 49 at 0x........: pthread_mutex_init (drd_pthread_intercepts.c:?) 50 by 0x........: main (tc23_bogus_condwait.c:53) 51 52 Thread 1: 53 The impossible happened: mutex is locked simultaneously by two threads: mutex 0x........, recursion count 1, owner 2. 54 at 0x........: pthread_cond_wait (drd_pthread_intercepts.c:?) 55 by 0x........: main (tc23_bogus_condwait.c:78) 56 mutex 0x........ was first observed at: 57 at 0x........: pthread_mutex_init (drd_pthread_intercepts.c:?) 58 by 0x........: main (tc23_bogus_condwait.c:53) 59 60 Thread 2: 61 Mutex not locked by calling thread: mutex 0x........, recursion count 2, owner 1. 62 at 0x........: pthread_mutex_unlock (drd_pthread_intercepts.c:?) 63 by 0x........: grab_the_lock (tc23_bogus_condwait.c:42) 64 by 0x........: vgDrd_thread_wrapper (drd_pthread_intercepts.c:?) 65 mutex 0x........ was first observed at: 66 at 0x........: pthread_mutex_init (drd_pthread_intercepts.c:?) 67 by 0x........: main (tc23_bogus_condwait.c:53) 68 69 Assertion failed: (!r), function main, file tc23_bogus_condwait.c, line 86. 70 71 Process terminating with default action of signal 6 (SIGABRT) 72 at 0x........: __kill (in /...libc...) 73 by 0x........: __assert_rtn (in /...libc...) 74 by 0x........: main (tc23_bogus_condwait.c:86) 75 76 ERROR SUMMARY: 10 errors from 8 contexts (suppressed: 0 from 0) 77