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