]> CyberLeo.Net >> Repos - FreeBSD/releng/9.2.git/blob - lib/libkse/test/mutex_d.exp
- Copy stable/9 to releng/9.2 as part of the 9.2-RELEASE cycle.
[FreeBSD/releng/9.2.git] / lib / libkse / test / mutex_d.exp
1 # $FreeBSD$
2
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
20
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
98
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
161
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
224
225 Testing queueing order
226 ----------------------
227   Queueing order on a mutex - PASS
228   Queueing order on a condition variable - PASS
229
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
247
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
290
291 Total tests 212, passed 212, failed 0