4 # Op: C(ommand)/T(est)/W(ait)
7 # | | | opcode argument
13 # opcode opcode argument
14 # schedother nice value
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 # signal thread to signal (0-7)
28 # opcode opcode argument
33 # nprioeq normal priority
34 # npriolt normal priority
35 # npriogt normal priority
36 # locked lock nr (0-7)
37 # blocked lock nr (0-7)
38 # blockedwake lock nr (0-7)
39 # unlocked lock nr (0-7)
40 # opcodeeq command opcode or number
68 C: lockintnowait: 3: 0
80 # Wait until T0 is in the wakeup code
83 # Verify that T1 is unboosted
87 # T2 lock L1 (T0 is boosted and pending owner !)
92 # Interrupt T3 and wait until T3 returned
96 # Verify prio of T0 (still pending owner,
97 # but T2 is enqueued due to the previous boost by T3
104 # Unlock L1 and let T2 get L1
108 # Verify that T0 is unboosted
112 # Unlock everything and exit