blob: c44e998fc26dcab34efd612b929feab6b15b3e1f [file] [log] [blame]
sewardjb4112022007-11-09 22:49:28 +00001
2
3
4------ This is output for >= glibc 2.4 ------
5
6---------------- pthread_create/join ----------------
7
8Thread #1 is the program's root thread
9
10Thread #2 was created
11 at 0x........: clone (in /...libc...)
12 by 0x........: pthread_create@GLIBC_ (in /lib/libpthread...)
13 by 0x........: pthread_create@* (hg_intercepts.c:...)
14 by 0x........: main (tc20_verifywrap.c:76)
15
16Possible data race during write of size 2 at 0x........
17 at 0x........: main (tc20_verifywrap.c:78)
18 Old state: owned exclusively by thread #2
19 New state: shared-modified by threads #1, #2
20 Reason: this thread, #1, holds no locks at all
21
22Thread #1's call to pthread_join failed
23 with error code 35 (EDEADLK: Resource deadlock would occur)
24 at 0x........: pthread_join (hg_intercepts.c:...)
25 by 0x........: main (tc20_verifywrap.c:83)
26
27---------------- pthread_mutex_lock et al ----------------
28
29
30Thread #1's call to pthread_mutex_init failed
31 with error code 95 (EOPNOTSUPP: Operation not supported on transport endpoint)
32 at 0x........: pthread_mutex_init (hg_intercepts.c:...)
33 by 0x........: main (tc20_verifywrap.c:92)
34
35Thread #1: pthread_mutex_destroy of a locked mutex
36 at 0x........: pthread_mutex_destroy (hg_intercepts.c:...)
37 by 0x........: main (tc20_verifywrap.c:102)
38
39Thread #1's call to pthread_mutex_destroy failed
40 with error code 16 (EBUSY: Device or resource busy)
41 at 0x........: pthread_mutex_destroy (hg_intercepts.c:...)
42 by 0x........: main (tc20_verifywrap.c:102)
43
44Thread #1's call to pthread_mutex_lock failed
45 with error code 22 (EINVAL: Invalid argument)
46 at 0x........: pthread_mutex_lock (hg_intercepts.c:...)
47 by 0x........: main (tc20_verifywrap.c:108)
48
49Thread #1's call to pthread_mutex_trylock failed
50 with error code 22 (EINVAL: Invalid argument)
51 at 0x........: pthread_mutex_trylock (hg_intercepts.c:...)
52 by 0x........: main (tc20_verifywrap.c:116)
53
54Thread #1's call to pthread_mutex_timedlock failed
55 with error code 22 (EINVAL: Invalid argument)
56 at 0x........: pthread_mutex_timedlock (hg_intercepts.c:...)
57 by 0x........: main (tc20_verifywrap.c:121)
58
59Thread #1 unlocked an invalid lock at 0x........
60 at 0x........: pthread_mutex_unlock (hg_intercepts.c:...)
61 by 0x........: main (tc20_verifywrap.c:125)
62
63Thread #1's call to pthread_mutex_unlock failed
64 with error code 22 (EINVAL: Invalid argument)
65 at 0x........: pthread_mutex_unlock (hg_intercepts.c:...)
66 by 0x........: main (tc20_verifywrap.c:125)
67
68---------------- pthread_cond_wait et al ----------------
69
70
71Thread #1: pthread_cond_{timed}wait called with un-held mutex
72 at 0x........: pthread_cond_wait@* (hg_intercepts.c:...)
73 by 0x........: main (tc20_verifywrap.c:147)
74
75Thread #1's call to pthread_cond_wait failed
76 with error code 1 (EPERM: Operation not permitted)
77 at 0x........: pthread_cond_wait@* (hg_intercepts.c:...)
78 by 0x........: main (tc20_verifywrap.c:147)
79
80FIXME: can't figure out how to verify wrap of pthread_cond_signal
81
82
83FIXME: can't figure out how to verify wrap of pthread_broadcast_signal
84
85
86Thread #1: pthread_cond_{timed}wait called with un-held mutex
87 at 0x........: pthread_cond_timedwait@* (hg_intercepts.c:...)
88 by 0x........: main (tc20_verifywrap.c:165)
89
90Thread #1's call to pthread_cond_timedwait failed
91 with error code 22 (EINVAL: Invalid argument)
92 at 0x........: pthread_cond_timedwait@* (hg_intercepts.c:...)
93 by 0x........: main (tc20_verifywrap.c:165)
94
95---------------- pthread_rwlock_* ----------------
96
97
98Thread #1 unlocked a not-locked lock at 0x........
99 at 0x........: pthread_rwlock_unlock (hg_intercepts.c:...)
100 by 0x........: main (tc20_verifywrap.c:179)
101 Lock at 0x........ was first observed
102 at 0x........: pthread_rwlock_init (hg_intercepts.c:...)
103 by 0x........: main (tc20_verifywrap.c:178)
104(1) no error on next line
105(2) no error on next line
106(3) ERROR on next line
107
108Thread #1 unlocked a not-locked lock at 0x........
109 at 0x........: pthread_rwlock_unlock (hg_intercepts.c:...)
110 by 0x........: main (tc20_verifywrap.c:196)
111 Lock at 0x........ was first observed
112 at 0x........: pthread_rwlock_init (hg_intercepts.c:...)
113 by 0x........: main (tc20_verifywrap.c:186)
114(4) no error on next line
115(5) no error on next line
116(6) no error on next line
117(7) no error on next line
118(8) ERROR on next line
119
120Thread #1 unlocked a not-locked lock at 0x........
121 at 0x........: pthread_rwlock_unlock (hg_intercepts.c:...)
122 by 0x........: main (tc20_verifywrap.c:212)
123 Lock at 0x........ was first observed
124 at 0x........: pthread_rwlock_init (hg_intercepts.c:...)
125 by 0x........: main (tc20_verifywrap.c:186)
126
127---------------- sem_* ----------------
128
129
130Thread #1's call to sem_init failed
131 with error code 22 (EINVAL: Invalid argument)
132 at 0x........: sem_init@* (hg_intercepts.c:...)
133 by 0x........: main (tc20_verifywrap.c:228)
134
135FIXME: can't figure out how to verify wrap of sem_destroy
136
137
138Thread #1: Bug in libpthread: sem_wait succeeded on semaphore without prior sem_post
139 at 0x........: sem_wait_WRK (hg_intercepts.c:...)
140 by 0x........: sem_wait@* (hg_intercepts.c:...)
141 by 0x........: main (tc20_verifywrap.c:242)
142
143FIXME: can't figure out how to verify wrap of sem_post
144
145
146------------ dealloc of mem holding locks ------------
147
148
149Thread #1 deallocated location 0x........ containing a locked lock
150 at 0x........: main (tc20_verifywrap.c:261)
151 Lock at 0x........ was first observed
152 at 0x........: pthread_rwlock_init (hg_intercepts.c:...)
153 by 0x........: main (tc20_verifywrap.c:216)
154
155ERROR SUMMARY: 20 errors from 20 contexts (suppressed: 0 from 0)