3 Testing pthread_mutex_init
4 --------------------------
5 Protocol PTHREAD_PRIO_NONE, Type POSIX (type not specified) - PASS
6 Protocol PTHREAD_PRIO_NONE, Type SS2 PTHREAD_MUTEX_DEFAULT - PASS
7 Protocol PTHREAD_PRIO_NONE, Type SS2 PTHREAD_MUTEX_ERRORCHECK - PASS
8 Protocol PTHREAD_PRIO_NONE, Type SS2 PTHREAD_MUTEX_NORMAL - PASS
9 Protocol PTHREAD_PRIO_NONE, Type SS2 PTHREAD_MUTEX_RECURSIVE - PASS
10 Protocol PTHREAD_PRIO_INHERIT, Type POSIX (type not specified) - PASS
11 Protocol PTHREAD_PRIO_INHERIT, Type SS2 PTHREAD_MUTEX_DEFAULT - PASS
12 Protocol PTHREAD_PRIO_INHERIT, Type SS2 PTHREAD_MUTEX_ERRORCHECK - PASS
13 Protocol PTHREAD_PRIO_INHERIT, Type SS2 PTHREAD_MUTEX_NORMAL - PASS
14 Protocol PTHREAD_PRIO_INHERIT, Type SS2 PTHREAD_MUTEX_RECURSIVE - PASS
15 Protocol PTHREAD_PRIO_PROTECT, Type POSIX (type not specified) - PASS
16 Protocol PTHREAD_PRIO_PROTECT, Type SS2 PTHREAD_MUTEX_DEFAULT - PASS
17 Protocol PTHREAD_PRIO_PROTECT, Type SS2 PTHREAD_MUTEX_ERRORCHECK - PASS
18 Protocol PTHREAD_PRIO_PROTECT, Type SS2 PTHREAD_MUTEX_NORMAL - PASS
19 Protocol PTHREAD_PRIO_PROTECT, Type SS2 PTHREAD_MUTEX_RECURSIVE - PASS
21 Testing pthread_mutex_destroy
22 -----------------------------
23 Protocol PTHREAD_PRIO_NONE, Type POSIX (type not specified)
24 Destruction of unused mutex - PASS
25 Destruction of mutex locked by self - PASS
26 Destruction of mutex locked by another thread - PASS
27 Destruction of mutex while being used in cond_wait - PASS
28 Protocol PTHREAD_PRIO_NONE, Type SS2 PTHREAD_MUTEX_DEFAULT
29 Destruction of unused mutex - PASS
30 Destruction of mutex locked by self - PASS
31 Destruction of mutex locked by another thread - PASS
32 Destruction of mutex while being used in cond_wait - PASS
33 Protocol PTHREAD_PRIO_NONE, Type SS2 PTHREAD_MUTEX_ERRORCHECK
34 Destruction of unused mutex - PASS
35 Destruction of mutex locked by self - PASS
36 Destruction of mutex locked by another thread - PASS
37 Destruction of mutex while being used in cond_wait - PASS
38 Protocol PTHREAD_PRIO_NONE, Type SS2 PTHREAD_MUTEX_NORMAL
39 Destruction of unused mutex - PASS
40 Destruction of mutex locked by self - PASS
41 Destruction of mutex locked by another thread - PASS
42 Destruction of mutex while being used in cond_wait - PASS
43 Protocol PTHREAD_PRIO_NONE, Type SS2 PTHREAD_MUTEX_RECURSIVE
44 Destruction of unused mutex - PASS
45 Destruction of mutex locked by self - PASS
46 Destruction of mutex locked by another thread - PASS
47 Destruction of mutex while being used in cond_wait - PASS
48 Protocol PTHREAD_PRIO_INHERIT, Type POSIX (type not specified)
49 Destruction of unused mutex - PASS
50 Destruction of mutex locked by self - PASS
51 Destruction of mutex locked by another thread - PASS
52 Destruction of mutex while being used in cond_wait - PASS
53 Protocol PTHREAD_PRIO_INHERIT, Type SS2 PTHREAD_MUTEX_DEFAULT
54 Destruction of unused mutex - PASS
55 Destruction of mutex locked by self - PASS
56 Destruction of mutex locked by another thread - PASS
57 Destruction of mutex while being used in cond_wait - PASS
58 Protocol PTHREAD_PRIO_INHERIT, Type SS2 PTHREAD_MUTEX_ERRORCHECK
59 Destruction of unused mutex - PASS
60 Destruction of mutex locked by self - PASS
61 Destruction of mutex locked by another thread - PASS
62 Destruction of mutex while being used in cond_wait - PASS
63 Protocol PTHREAD_PRIO_INHERIT, Type SS2 PTHREAD_MUTEX_NORMAL
64 Destruction of unused mutex - PASS
65 Destruction of mutex locked by self - PASS
66 Destruction of mutex locked by another thread - PASS
67 Destruction of mutex while being used in cond_wait - PASS
68 Protocol PTHREAD_PRIO_INHERIT, Type SS2 PTHREAD_MUTEX_RECURSIVE
69 Destruction of unused mutex - PASS
70 Destruction of mutex locked by self - PASS
71 Destruction of mutex locked by another thread - PASS
72 Destruction of mutex while being used in cond_wait - PASS
73 Protocol PTHREAD_PRIO_PROTECT, Type POSIX (type not specified)
74 Destruction of unused mutex - PASS
75 Destruction of mutex locked by self - PASS
76 Destruction of mutex locked by another thread - PASS
77 Destruction of mutex while being used in cond_wait - PASS
78 Protocol PTHREAD_PRIO_PROTECT, Type SS2 PTHREAD_MUTEX_DEFAULT
79 Destruction of unused mutex - PASS
80 Destruction of mutex locked by self - PASS
81 Destruction of mutex locked by another thread - PASS
82 Destruction of mutex while being used in cond_wait - PASS
83 Protocol PTHREAD_PRIO_PROTECT, Type SS2 PTHREAD_MUTEX_ERRORCHECK
84 Destruction of unused mutex - PASS
85 Destruction of mutex locked by self - PASS
86 Destruction of mutex locked by another thread - PASS
87 Destruction of mutex while being used in cond_wait - PASS
88 Protocol PTHREAD_PRIO_PROTECT, Type SS2 PTHREAD_MUTEX_NORMAL
89 Destruction of unused mutex - PASS
90 Destruction of mutex locked by self - PASS
91 Destruction of mutex locked by another thread - PASS
92 Destruction of mutex while being used in cond_wait - PASS
93 Protocol PTHREAD_PRIO_PROTECT, Type SS2 PTHREAD_MUTEX_RECURSIVE
94 Destruction of unused mutex - PASS
95 Destruction of mutex locked by self - PASS
96 Destruction of mutex locked by another thread - PASS
97 Destruction of mutex while being used in cond_wait - PASS
99 Testing pthread_mutex_lock
100 --------------------------
101 Protocol PTHREAD_PRIO_NONE, Type POSIX (type not specified)
102 Lock on unlocked mutex - PASS
103 Lock on invalid mutex - PASS
104 Lock on mutex held by self - PASS
105 Protocol PTHREAD_PRIO_NONE, Type SS2 PTHREAD_MUTEX_DEFAULT
106 Lock on unlocked mutex - PASS
107 Lock on invalid mutex - PASS
108 Lock on mutex held by self - PASS
109 Protocol PTHREAD_PRIO_NONE, Type SS2 PTHREAD_MUTEX_ERRORCHECK
110 Lock on unlocked mutex - PASS
111 Lock on invalid mutex - PASS
112 Lock on mutex held by self - PASS
113 Protocol PTHREAD_PRIO_NONE, Type SS2 PTHREAD_MUTEX_NORMAL
114 Lock on unlocked mutex - PASS
115 Lock on invalid mutex - PASS
116 Lock on mutex held by self - PASS
117 Protocol PTHREAD_PRIO_NONE, Type SS2 PTHREAD_MUTEX_RECURSIVE
118 Lock on unlocked mutex - PASS
119 Lock on invalid mutex - PASS
120 Lock on mutex held by self - PASS
121 Protocol PTHREAD_PRIO_INHERIT, Type POSIX (type not specified)
122 Lock on unlocked mutex - PASS
123 Lock on invalid mutex - PASS
124 Lock on mutex held by self - PASS
125 Protocol PTHREAD_PRIO_INHERIT, Type SS2 PTHREAD_MUTEX_DEFAULT
126 Lock on unlocked mutex - PASS
127 Lock on invalid mutex - PASS
128 Lock on mutex held by self - PASS
129 Protocol PTHREAD_PRIO_INHERIT, Type SS2 PTHREAD_MUTEX_ERRORCHECK
130 Lock on unlocked mutex - PASS
131 Lock on invalid mutex - PASS
132 Lock on mutex held by self - PASS
133 Protocol PTHREAD_PRIO_INHERIT, Type SS2 PTHREAD_MUTEX_NORMAL
134 Lock on unlocked mutex - PASS
135 Lock on invalid mutex - PASS
136 Lock on mutex held by self - PASS
137 Protocol PTHREAD_PRIO_INHERIT, Type SS2 PTHREAD_MUTEX_RECURSIVE
138 Lock on unlocked mutex - PASS
139 Lock on invalid mutex - PASS
140 Lock on mutex held by self - PASS
141 Protocol PTHREAD_PRIO_PROTECT, Type POSIX (type not specified)
142 Lock on unlocked mutex - PASS
143 Lock on invalid mutex - PASS
144 Lock on mutex held by self - PASS
145 Protocol PTHREAD_PRIO_PROTECT, Type SS2 PTHREAD_MUTEX_DEFAULT
146 Lock on unlocked mutex - PASS
147 Lock on invalid mutex - PASS
148 Lock on mutex held by self - PASS
149 Protocol PTHREAD_PRIO_PROTECT, Type SS2 PTHREAD_MUTEX_ERRORCHECK
150 Lock on unlocked mutex - PASS
151 Lock on invalid mutex - PASS
152 Lock on mutex held by self - PASS
153 Protocol PTHREAD_PRIO_PROTECT, Type SS2 PTHREAD_MUTEX_NORMAL
154 Lock on unlocked mutex - PASS
155 Lock on invalid mutex - PASS
156 Lock on mutex held by self - PASS
157 Protocol PTHREAD_PRIO_PROTECT, Type SS2 PTHREAD_MUTEX_RECURSIVE
158 Lock on unlocked mutex - PASS
159 Lock on invalid mutex - PASS
160 Lock on mutex held by self - PASS
162 Testing pthread_mutex_unlock
163 ----------------------------
164 Protocol PTHREAD_PRIO_NONE, Type POSIX (type not specified)
165 Unlock on mutex held by self - PASS
166 Unlock on invalid mutex - PASS
167 Unlock on mutex locked by another thread - PASS
168 Protocol PTHREAD_PRIO_NONE, Type SS2 PTHREAD_MUTEX_DEFAULT
169 Unlock on mutex held by self - PASS
170 Unlock on invalid mutex - PASS
171 Unlock on mutex locked by another thread - PASS
172 Protocol PTHREAD_PRIO_NONE, Type SS2 PTHREAD_MUTEX_ERRORCHECK
173 Unlock on mutex held by self - PASS
174 Unlock on invalid mutex - PASS
175 Unlock on mutex locked by another thread - PASS
176 Protocol PTHREAD_PRIO_NONE, Type SS2 PTHREAD_MUTEX_NORMAL
177 Unlock on mutex held by self - PASS
178 Unlock on invalid mutex - PASS
179 Unlock on mutex locked by another thread - PASS
180 Protocol PTHREAD_PRIO_NONE, Type SS2 PTHREAD_MUTEX_RECURSIVE
181 Unlock on mutex held by self - PASS
182 Unlock on invalid mutex - PASS
183 Unlock on mutex locked by another thread - PASS
184 Protocol PTHREAD_PRIO_INHERIT, Type POSIX (type not specified)
185 Unlock on mutex held by self - PASS
186 Unlock on invalid mutex - PASS
187 Unlock on mutex locked by another thread - PASS
188 Protocol PTHREAD_PRIO_INHERIT, Type SS2 PTHREAD_MUTEX_DEFAULT
189 Unlock on mutex held by self - PASS
190 Unlock on invalid mutex - PASS
191 Unlock on mutex locked by another thread - PASS
192 Protocol PTHREAD_PRIO_INHERIT, Type SS2 PTHREAD_MUTEX_ERRORCHECK
193 Unlock on mutex held by self - PASS
194 Unlock on invalid mutex - PASS
195 Unlock on mutex locked by another thread - PASS
196 Protocol PTHREAD_PRIO_INHERIT, Type SS2 PTHREAD_MUTEX_NORMAL
197 Unlock on mutex held by self - PASS
198 Unlock on invalid mutex - PASS
199 Unlock on mutex locked by another thread - PASS
200 Protocol PTHREAD_PRIO_INHERIT, Type SS2 PTHREAD_MUTEX_RECURSIVE
201 Unlock on mutex held by self - PASS
202 Unlock on invalid mutex - PASS
203 Unlock on mutex locked by another thread - PASS
204 Protocol PTHREAD_PRIO_PROTECT, Type POSIX (type not specified)
205 Unlock on mutex held by self - PASS
206 Unlock on invalid mutex - PASS
207 Unlock on mutex locked by another thread - PASS
208 Protocol PTHREAD_PRIO_PROTECT, Type SS2 PTHREAD_MUTEX_DEFAULT
209 Unlock on mutex held by self - PASS
210 Unlock on invalid mutex - PASS
211 Unlock on mutex locked by another thread - PASS
212 Protocol PTHREAD_PRIO_PROTECT, Type SS2 PTHREAD_MUTEX_ERRORCHECK
213 Unlock on mutex held by self - PASS
214 Unlock on invalid mutex - PASS
215 Unlock on mutex locked by another thread - PASS
216 Protocol PTHREAD_PRIO_PROTECT, Type SS2 PTHREAD_MUTEX_NORMAL
217 Unlock on mutex held by self - PASS
218 Unlock on invalid mutex - PASS
219 Unlock on mutex locked by another thread - PASS
220 Protocol PTHREAD_PRIO_PROTECT, Type SS2 PTHREAD_MUTEX_RECURSIVE
221 Unlock on mutex held by self - PASS
222 Unlock on invalid mutex - PASS
223 Unlock on mutex locked by another thread - PASS
225 Testing queueing order
226 ----------------------
227 Queueing order on a mutex - PASS
228 Queueing order on a condition variable - PASS
230 Testing priority inheritence
231 ----------------------------
232 Protype PTHREAD_PRIO_INHERIT, Type POSIX (type not specified)
233 Simple inheritence test - PASS
234 Inheritence test with change of priority - PASS
235 Protype PTHREAD_PRIO_INHERIT, Type SS2 PTHREAD_MUTEX_DEFAULT
236 Simple inheritence test - PASS
237 Inheritence test with change of priority - PASS
238 Protype PTHREAD_PRIO_INHERIT, Type SS2 PTHREAD_MUTEX_ERRORCHECK
239 Simple inheritence test - PASS
240 Inheritence test with change of priority - PASS
241 Protype PTHREAD_PRIO_INHERIT, Type SS2 PTHREAD_MUTEX_NORMAL
242 Simple inheritence test - PASS
243 Inheritence test with change of priority - PASS
244 Protype PTHREAD_PRIO_INHERIT, Type SS2 PTHREAD_MUTEX_RECURSIVE
245 Simple inheritence test - PASS
246 Inheritence test with change of priority - PASS
248 Testing priority ceilings
249 -------------------------
250 Protype PTHREAD_PRIO_PROTECT, Type POSIX (type not specified)
251 Lock with ceiling priority < thread priority - PASS
252 Lock with ceiling priority = thread priority - PASS
253 Lock with ceiling priority > thread priority - PASS
254 Preemption with ceiling priority < thread priority - PASS
255 Preemption with ceiling priority = thread priority - PASS
256 SCHED_FIFO scheduling and ceiling priority = thread priority - PASS
257 SCHED_FIFO scheduling and ceiling priority > thread priority - PASS
258 Protype PTHREAD_PRIO_PROTECT, Type SS2 PTHREAD_MUTEX_DEFAULT
259 Lock with ceiling priority < thread priority - PASS
260 Lock with ceiling priority = thread priority - PASS
261 Lock with ceiling priority > thread priority - PASS
262 Preemption with ceiling priority < thread priority - PASS
263 Preemption with ceiling priority = thread priority - PASS
264 SCHED_FIFO scheduling and ceiling priority = thread priority - PASS
265 SCHED_FIFO scheduling and ceiling priority > thread priority - PASS
266 Protype PTHREAD_PRIO_PROTECT, Type SS2 PTHREAD_MUTEX_ERRORCHECK
267 Lock with ceiling priority < thread priority - PASS
268 Lock with ceiling priority = thread priority - PASS
269 Lock with ceiling priority > thread priority - PASS
270 Preemption with ceiling priority < thread priority - PASS
271 Preemption with ceiling priority = thread priority - PASS
272 SCHED_FIFO scheduling and ceiling priority = thread priority - PASS
273 SCHED_FIFO scheduling and ceiling priority > thread priority - PASS
274 Protype PTHREAD_PRIO_PROTECT, Type SS2 PTHREAD_MUTEX_NORMAL
275 Lock with ceiling priority < thread priority - PASS
276 Lock with ceiling priority = thread priority - PASS
277 Lock with ceiling priority > thread priority - PASS
278 Preemption with ceiling priority < thread priority - PASS
279 Preemption with ceiling priority = thread priority - PASS
280 SCHED_FIFO scheduling and ceiling priority = thread priority - PASS
281 SCHED_FIFO scheduling and ceiling priority > thread priority - PASS
282 Protype PTHREAD_PRIO_PROTECT, Type SS2 PTHREAD_MUTEX_RECURSIVE
283 Lock with ceiling priority < thread priority - PASS
284 Lock with ceiling priority = thread priority - PASS
285 Lock with ceiling priority > thread priority - PASS
286 Preemption with ceiling priority < thread priority - PASS
287 Preemption with ceiling priority = thread priority - PASS
288 SCHED_FIFO scheduling and ceiling priority = thread priority - PASS
289 SCHED_FIFO scheduling and ceiling priority > thread priority - PASS
291 Total tests 212, passed 212, failed 0