


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

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

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


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