blob: 2ba0dced48fa95b459c0bf0ccbe9b62c48b2238f [file] [log] [blame]
Thomas Gleixner61a87122006-06-27 02:54:56 -07001#
2# rt-mutex test
3#
4# Op: C(ommand)/T(est)/W(ait)
5# | opcode
6# | | threadid: 0-7
7# | | | opcode argument
8# | | | |
9# C: lock: 0: 0
10#
11# Commands
12#
13# opcode opcode argument
14# schedother nice value
15# schedfifo priority
16# lock lock nr (0-7)
17# locknowait lock nr (0-7)
18# lockint lock nr (0-7)
19# lockintnowait lock nr (0-7)
20# lockcont lock nr (0-7)
21# unlock lock nr (0-7)
22# lockbkl lock nr (0-7)
23# unlockbkl lock nr (0-7)
24# signal thread to signal (0-7)
25# reset 0
26# resetevent 0
27#
28# Tests / Wait
29#
30# opcode opcode argument
31#
32# prioeq priority
33# priolt priority
34# priogt priority
35# nprioeq normal priority
36# npriolt normal priority
37# npriogt normal priority
38# locked lock nr (0-7)
39# blocked lock nr (0-7)
40# blockedwake lock nr (0-7)
41# unlocked lock nr (0-7)
42# lockedbkl dont care
43# blockedbkl dont care
44# unlockedbkl dont care
45# opcodeeq command opcode or number
46# opcodelt number
47# opcodegt number
48# eventeq number
49# eventgt number
50# eventlt number
51
52#
53# 3 threads 2 lock PI
54#
55C: resetevent: 0: 0
56W: opcodeeq: 0: 0
57
58# Set schedulers
59C: schedother: 0: 0
60W: opcodeeq: 0: 0
61C: schedother: 1: 0
62W: opcodeeq: 1: 0
63C: schedfifo: 2: 82
64W: opcodeeq: 2: 0
65
66# T0 lock L0
67C: locknowait: 0: 0
68W: locked: 0: 0
69
70# T1 lock L0
71C: locknowait: 1: 0
72W: blocked: 1: 0
73T: priolt: 0: 1
74
75# T2 lock L0
76C: locknowait: 2: 0
77W: blocked: 2: 0
78T: prioeq: 0: 82
79
80# T0 unlock L0
81C: unlock: 0: 0
82
83# Wait until T2 got the lock
84W: locked: 2: 0
85W: unlocked: 0: 0
86T: priolt: 0: 1
87
88# T2 unlock L0
89C: unlock: 2: 0
90
91W: unlocked: 2: 0
92W: locked: 1: 0
93
94C: unlock: 1: 0
95W: unlocked: 1: 0