| |
| The object at address 0x........ is not a mutex. |
| at 0x........: pthread_cond_wait (drd_pthread_intercepts.c:?) |
| by 0x........: main (tc23_bogus_condwait.c:69) |
| |
| Mutex not locked: mutex 0x........, recursion count 0, owner 0. |
| at 0x........: pthread_cond_wait (drd_pthread_intercepts.c:?) |
| by 0x........: main (tc23_bogus_condwait.c:72) |
| mutex 0x........ was first observed at: |
| at 0x........: pthread_mutex_init (drd_pthread_intercepts.c:?) |
| by 0x........: main (tc23_bogus_condwait.c:54) |
| |
| Thread 3: |
| Probably a race condition: condition variable 0x........ has been signaled but the associated mutex 0x........ is not locked by the signalling thread. |
| at 0x........: pthread_cond_signal (drd_pthread_intercepts.c:?) |
| by 0x........: rescue_me (tc23_bogus_condwait.c:20) |
| by 0x........: vgDrd_thread_wrapper (drd_pthread_intercepts.c:?) |
| cond 0x........ was first observed at: |
| at 0x........: pthread_cond_init (drd_pthread_intercepts.c:?) |
| by 0x........: main (tc23_bogus_condwait.c:56) |
| mutex 0x........ was first observed at: |
| at 0x........: pthread_mutex_init (drd_pthread_intercepts.c:?) |
| by 0x........: main (tc23_bogus_condwait.c:54) |
| |
| Thread 1: |
| The object at address 0x........ is not a mutex. |
| at 0x........: pthread_cond_wait (drd_pthread_intercepts.c:?) |
| by 0x........: main (tc23_bogus_condwait.c:75) |
| rwlock 0x........ was first observed at: |
| at 0x........: pthread_rwlock_init (drd_pthread_intercepts.c:?) |
| by 0x........: main (tc23_bogus_condwait.c:57) |
| |
| Mutex not locked by calling thread: mutex 0x........, recursion count 1, owner 2. |
| at 0x........: pthread_cond_wait (drd_pthread_intercepts.c:?) |
| by 0x........: main (tc23_bogus_condwait.c:78) |
| mutex 0x........ was first observed at: |
| at 0x........: pthread_mutex_init (drd_pthread_intercepts.c:?) |
| by 0x........: main (tc23_bogus_condwait.c:53) |
| |
| Thread 3: |
| Probably a race condition: condition variable 0x........ has been signaled but the associated mutex 0x........ is not locked by the signalling thread. |
| at 0x........: pthread_cond_signal (drd_pthread_intercepts.c:?) |
| by 0x........: rescue_me (tc23_bogus_condwait.c:24) |
| by 0x........: vgDrd_thread_wrapper (drd_pthread_intercepts.c:?) |
| cond 0x........ was first observed at: |
| at 0x........: pthread_cond_init (drd_pthread_intercepts.c:?) |
| by 0x........: main (tc23_bogus_condwait.c:56) |
| mutex 0x........ was first observed at: |
| at 0x........: pthread_mutex_init (drd_pthread_intercepts.c:?) |
| by 0x........: main (tc23_bogus_condwait.c:53) |
| |
| Thread 1: |
| The impossible happened: mutex is locked simultaneously by two threads: mutex 0x........, recursion count 1, owner 2. |
| at 0x........: pthread_cond_wait (drd_pthread_intercepts.c:?) |
| by 0x........: main (tc23_bogus_condwait.c:78) |
| mutex 0x........ was first observed at: |
| at 0x........: pthread_mutex_init (drd_pthread_intercepts.c:?) |
| by 0x........: main (tc23_bogus_condwait.c:53) |
| |
| Thread 2: |
| Mutex not locked by calling thread: mutex 0x........, recursion count 2, owner 1. |
| at 0x........: pthread_mutex_unlock (drd_pthread_intercepts.c:?) |
| by 0x........: grab_the_lock (tc23_bogus_condwait.c:42) |
| by 0x........: vgDrd_thread_wrapper (drd_pthread_intercepts.c:?) |
| mutex 0x........ was first observed at: |
| at 0x........: pthread_mutex_init (drd_pthread_intercepts.c:?) |
| by 0x........: main (tc23_bogus_condwait.c:53) |
| |
| Assertion failed: (!r), function main, file tc23_bogus_condwait.c, line 86. |
| |
| Process terminating with default action of signal 6 (SIGABRT) |
| at 0x........: __kill (in /...libc...) |
| by 0x........: __assert_rtn (in /...libc...) |
| by 0x........: main (tc23_bogus_condwait.c:86) |
| |
| ERROR SUMMARY: 10 errors from 8 contexts (suppressed: 0 from 0) |