


------ This is output for >= glibc 2.4 ------

---------------- pthread_create/join ----------------

---Thread-Announcement------------------------------------------

Thread #x is the program's root thread

---Thread-Announcement------------------------------------------

Thread #x was created
   ...
   by 0x........: pthread_create@* (hg_intercepts.c:...)
   by 0x........: main (tc20_verifywrap.c:76)

----------------------------------------------------------------

Possible data race during write of size 2 at 0x........ by thread #x
Locks held: none
   at 0x........: main (tc20_verifywrap.c:78)

This conflicts with a previous write of size 2 by thread #x
Locks held: none
   at 0x........: racy_child (tc20_verifywrap.c:34)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...
 Location 0x........ is 0 bytes inside global var "unprotected"
 declared at tc20_verifywrap.c:27

----------------------------------------------------------------

Thread #x's call to pthread_join failed
   with error code 35 (EDEADLK: Resource deadlock would occur)
   at 0x........: pthread_join_WRK (hg_intercepts.c:...)
   by 0x........: pthread_join (hg_intercepts.c:...)
   by 0x........: main (tc20_verifywrap.c:83)


---------------- pthread_mutex_lock et al ----------------

----------------------------------------------------------------

Thread #x's call to pthread_mutex_init failed
   with error code 95 (EOPNOTSUPP: Operation not supported on transport endpoint)
   at 0x........: pthread_mutex_init (hg_intercepts.c:...)
   by 0x........: main (tc20_verifywrap.c:92)

----------------------------------------------------------------

Thread #x: pthread_mutex_destroy of a locked mutex
   at 0x........: pthread_mutex_destroy (hg_intercepts.c:...)
   by 0x........: main (tc20_verifywrap.c:102)

----------------------------------------------------------------

Thread #x's call to pthread_mutex_destroy failed
   with error code 16 (EBUSY: Device or resource busy)
   at 0x........: pthread_mutex_destroy (hg_intercepts.c:...)
   by 0x........: main (tc20_verifywrap.c:102)

----------------------------------------------------------------

Thread #x's call to pthread_mutex_lock failed
   with error code 22 (EINVAL: Invalid argument)
   at 0x........: pthread_mutex_lock (hg_intercepts.c:...)
   by 0x........: main (tc20_verifywrap.c:108)

----------------------------------------------------------------

Thread #x's call to pthread_mutex_trylock failed
   with error code 22 (EINVAL: Invalid argument)
   at 0x........: pthread_mutex_trylock (hg_intercepts.c:...)
   by 0x........: main (tc20_verifywrap.c:116)

----------------------------------------------------------------

Thread #x's call to pthread_mutex_timedlock failed
   with error code 22 (EINVAL: Invalid argument)
   at 0x........: pthread_mutex_timedlock (hg_intercepts.c:...)
   by 0x........: main (tc20_verifywrap.c:121)

----------------------------------------------------------------

Thread #x unlocked an invalid lock at 0x........
   at 0x........: pthread_mutex_unlock (hg_intercepts.c:...)
   by 0x........: main (tc20_verifywrap.c:125)

----------------------------------------------------------------

Thread #x's call to pthread_mutex_unlock failed
   with error code 22 (EINVAL: Invalid argument)
   at 0x........: pthread_mutex_unlock (hg_intercepts.c:...)
   by 0x........: main (tc20_verifywrap.c:125)


---------------- pthread_cond_wait et al ----------------

----------------------------------------------------------------

Thread #x: pthread_cond_{timed}wait called with un-held mutex
   at 0x........: pthread_cond_wait_WRK (hg_intercepts.c:...)
   by 0x........: pthread_cond_wait@* (hg_intercepts.c:...)
   by 0x........: main (tc20_verifywrap.c:147)

----------------------------------------------------------------

Thread #x's call to pthread_cond_wait failed
   with error code 1 (EPERM: Operation not permitted)
   at 0x........: pthread_cond_wait_WRK (hg_intercepts.c:...)
   by 0x........: pthread_cond_wait@* (hg_intercepts.c:...)
   by 0x........: main (tc20_verifywrap.c:147)

----------------------------------------------------------------

Thread #x: pthread_cond_{signal,broadcast}: dubious: associated lock is not held by any thread
   at 0x........: pthread_cond_signal_WRK (hg_intercepts.c:...)
   by 0x........: pthread_cond_signal@* (hg_intercepts.c:...)
   by 0x........: main (tc20_verifywrap.c:152)


FIXME: can't figure out how to verify wrap of pthread_cond_signal

----------------------------------------------------------------

Thread #x: pthread_cond_{signal,broadcast}: dubious: associated lock is not held by any thread
   at 0x........: pthread_cond_broadcast_WRK (hg_intercepts.c:...)
   by 0x........: pthread_cond_broadcast@* (hg_intercepts.c:...)
   by 0x........: main (tc20_verifywrap.c:158)


FIXME: can't figure out how to verify wrap of pthread_broadcast_signal

----------------------------------------------------------------

Thread #x: pthread_cond_{timed}wait called with un-held mutex
   at 0x........: pthread_cond_timedwait_WRK (hg_intercepts.c:...)
   by 0x........: pthread_cond_timedwait@* (hg_intercepts.c:...)
   by 0x........: main (tc20_verifywrap.c:165)

----------------------------------------------------------------

Thread #x's call to pthread_cond_timedwait failed
   with error code 22 (EINVAL: Invalid argument)
   at 0x........: pthread_cond_timedwait_WRK (hg_intercepts.c:...)
   by 0x........: pthread_cond_timedwait@* (hg_intercepts.c:...)
   by 0x........: main (tc20_verifywrap.c:165)


---------------- pthread_rwlock_* ----------------

----------------------------------------------------------------

Thread #x unlocked a not-locked lock at 0x........
   at 0x........: pthread_rwlock_unlock_WRK (hg_intercepts.c:...)
   by 0x........: pthread_rwlock_unlock (hg_intercepts.c:...)
   by 0x........: main (tc20_verifywrap.c:179)
 Lock at 0x........ was first observed
   at 0x........: pthread_rwlock_init_WRK (hg_intercepts.c:...)
   by 0x........: pthread_rwlock_init (hg_intercepts.c:...)
   by 0x........: main (tc20_verifywrap.c:178)
 Location 0x........ is 0 bytes inside local var "rwl"
 declared at tc20_verifywrap.c:47, in frame #x of thread x


(1) no error on next line
(2) no error on next line
(3)    ERROR on next line
----------------------------------------------------------------

Thread #x unlocked a not-locked lock at 0x........
   at 0x........: pthread_rwlock_unlock_WRK (hg_intercepts.c:...)
   by 0x........: pthread_rwlock_unlock (hg_intercepts.c:...)
   by 0x........: main (tc20_verifywrap.c:196)
 Lock at 0x........ was first observed
   at 0x........: pthread_rwlock_init_WRK (hg_intercepts.c:...)
   by 0x........: pthread_rwlock_init (hg_intercepts.c:...)
   by 0x........: main (tc20_verifywrap.c:186)
 Location 0x........ is 0 bytes inside local var "rwl2"
 declared at tc20_verifywrap.c:48, in frame #x of thread x


(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
----------------------------------------------------------------

Thread #x unlocked a not-locked lock at 0x........
   at 0x........: pthread_rwlock_unlock_WRK (hg_intercepts.c:...)
   by 0x........: pthread_rwlock_unlock (hg_intercepts.c:...)
   by 0x........: main (tc20_verifywrap.c:212)
 Lock at 0x........ was first observed
   at 0x........: pthread_rwlock_init_WRK (hg_intercepts.c:...)
   by 0x........: pthread_rwlock_init (hg_intercepts.c:...)
   by 0x........: main (tc20_verifywrap.c:186)
 Location 0x........ is 0 bytes inside local var "rwl2"
 declared at tc20_verifywrap.c:48, in frame #x of thread x



---------------- sem_* ----------------

----------------------------------------------------------------

Thread #x's call to sem_init failed
   with error code 22 (EINVAL: Invalid argument)
   at 0x........: sem_init_WRK (hg_intercepts.c:...)
   by 0x........: sem_init@* (hg_intercepts.c:...)
   by 0x........: main (tc20_verifywrap.c:228)


FIXME: can't figure out how to verify wrap of sem_destroy

----------------------------------------------------------------

Thread #x: Bug in libpthread: sem_wait succeeded on semaphore without prior sem_post
   at 0x........: sem_wait_WRK (hg_intercepts.c:...)
   by 0x........: sem_wait (hg_intercepts.c:...)
   by 0x........: main (tc20_verifywrap.c:242)

----------------------------------------------------------------

Thread #x's call to sem_post failed
   with error code 22 (EINVAL: Invalid argument)
   at 0x........: sem_post_WRK (hg_intercepts.c:...)
   by 0x........: sem_post (hg_intercepts.c:...)
   by 0x........: main (tc20_verifywrap.c:245)


FIXME: can't figure out how to verify wrap of sem_post


------------ dealloc of mem holding locks ------------

----------------------------------------------------------------

Thread #x: Exiting thread still holds 1 lock
   ...


ERROR SUMMARY: 23 errors from 23 contexts (suppressed: 0 from 0)
