aboutsummaryrefslogtreecommitdiffstats
path: root/scripts/rt-tester/t5-l4-pi-boost-deboost.tst
blob: efa0788c1189f0966e30066665327bc686808436 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
#
# rt-mutex test
#
# Op: C(ommand)/T(est)/W(ait)
# |  opcode
# |  |     threadid: 0-7
# |  |     |  opcode argument
# |  |     |  |
# C: lock: 0: 0
#
# Commands
#
# opcode	opcode argument
# schedother	nice value
# schedfifo	priority
# lock		lock nr (0-7)
# locknowait	lock nr (0-7)
# lockint	lock nr (0-7)
# lockintnowait	lock nr (0-7)
# lockcont	lock nr (0-7)
# unlock	lock nr (0-7)
# lockbkl	lock nr (0-7)
# unlockbkl	lock nr (0-7)
# signal	thread to signal (0-7)
# reset		0
# resetevent	0
#
# Tests / Wait
#
# opcode	opcode argument
#
# prioeq	priority
# priolt	priority
# priogt	priority
# nprioeq	normal priority
# npriolt	normal priority
# npriogt	normal priority
# locked	lock nr (0-7)
# blocked	lock nr (0-7)
# blockedwake	lock nr (0-7)
# unlocked	lock nr (0-7)
# lockedbkl	dont care
# blockedbkl	dont care
# unlockedbkl	dont care
# opcodeeq	command opcode or number
# opcodelt	number
# opcodegt	number
# eventeq	number
# eventgt	number
# eventlt	number

#
# 5 threads 4 lock PI
#
C: resetevent:		0: 	0
W: opcodeeq:		0: 	0

# Set schedulers
C: schedother:		0: 	0
W: opcodeeq:		0: 	0
C: schedfifo:		1: 	81
W: opcodeeq:		1: 	0
C: schedfifo:		2: 	82
W: opcodeeq:		2: 	0
C: schedfifo:		3: 	83
W: opcodeeq:		3: 	0
C: schedfifo:		4: 	84
W: opcodeeq:		4: 	0

# T0 lock L0
C: locknowait:		0: 	0
W: locked:		0: 	0

# T1 lock L1
C: locknowait:		1: 	1
W: locked:		1: 	1

# T1 lock L0
C: lockintnowait:	1: 	0
W: blocked:		1: 	0
T: prioeq:		0: 	81

# T2 lock L2
C: locknowait:		2: 	2
W: locked:		2: 	2

# T2 lock L1
C: lockintnowait:	2: 	1
W: blocked:		2: 	1
T: prioeq:		0: 	82
T: prioeq:		1:	82

# T3 lock L3
C: locknowait:		3: 	3
W: locked:		3: 	3

# T3 lock L2
C: lockintnowait:	3: 	2
W: blocked:		3: 	2
T: prioeq:		0: 	83
T: prioeq:		1:	83
T: prioeq:		2:	83

# T4 lock L3
C: lockintnowait:	4:	3
W: blocked:		4: 	3
T: prioeq:		0: 	84
T: prioeq:		1:	84
T: prioeq:		2:	84
T: prioeq:		3:	84

# Signal T4
C: signal:		4: 	0
W: unlocked:		4: 	3
T: prioeq:		0: 	83
T: prioeq:		1:	83
T: prioeq:		2:	83
T: prioeq:		3:	83

# Signal T3
C: signal:		3: 	0
W: unlocked:		3: 	2
T: prioeq:		0: 	82
T: prioeq:		1:	82
T: prioeq:		2:	82

# Signal T2
C: signal:		2: 	0
W: unlocked:		2: 	1
T: prioeq:		0: 	81
T: prioeq:		1:	81

# Signal T1
C: signal:		1: 	0
W: unlocked:		1: 	0
T: priolt:		0: 	1

# Unlock and exit
C: unlock:		3:	3
C: unlock:		2:	2
C: unlock:		1:	1
C: unlock:		0:	0

W: unlocked:		3:	3
W: unlocked:		2:	2
W: unlocked:		1:	1
W: unlocked:		0:	0