1# 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# signal thread to signal (0-7) 23# reset 0 24# resetevent 0 25# 26# Tests / Wait 27# 28# opcode opcode argument 29# 30# prioeq priority 31# priolt priority 32# priogt priority 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 41# opcodelt number 42# opcodegt number 43# eventeq number 44# eventgt number 45# eventlt number 46 47# 48# 5 threads 4 lock PI - modify priority of blocked threads 49# 50C: resetevent: 0: 0 51W: opcodeeq: 0: 0 52 53# Set schedulers 54C: schedother: 0: 0 55C: schedfifo: 1: 81 56C: schedfifo: 2: 82 57C: schedfifo: 3: 83 58C: schedfifo: 4: 84 59 60# T0 lock L0 61C: locknowait: 0: 0 62W: locked: 0: 0 63 64# T1 lock L1 65C: locknowait: 1: 1 66W: locked: 1: 1 67 68# T1 lock L0 69C: lockintnowait: 1: 0 70W: blocked: 1: 0 71T: prioeq: 0: 81 72 73# T2 lock L2 74C: locknowait: 2: 2 75W: locked: 2: 2 76 77# T2 lock L1 78C: lockintnowait: 2: 1 79W: blocked: 2: 1 80T: prioeq: 0: 82 81T: prioeq: 1: 82 82 83# T3 lock L3 84C: locknowait: 3: 3 85W: locked: 3: 3 86 87# T3 lock L2 88C: lockintnowait: 3: 2 89W: blocked: 3: 2 90T: prioeq: 0: 83 91T: prioeq: 1: 83 92T: prioeq: 2: 83 93 94# T4 lock L3 95C: lockintnowait: 4: 3 96W: blocked: 4: 3 97T: prioeq: 0: 84 98T: prioeq: 1: 84 99T: prioeq: 2: 84 100T: prioeq: 3: 84 101 102# Reduce prio of T4 103C: schedfifo: 4: 80 104T: prioeq: 0: 83 105T: prioeq: 1: 83 106T: prioeq: 2: 83 107T: prioeq: 3: 83 108T: prioeq: 4: 80 109 110# Increase prio of T4 111C: schedfifo: 4: 84 112T: prioeq: 0: 84 113T: prioeq: 1: 84 114T: prioeq: 2: 84 115T: prioeq: 3: 84 116T: prioeq: 4: 84 117 118# Reduce prio of T3 119C: schedfifo: 3: 80 120T: prioeq: 0: 84 121T: prioeq: 1: 84 122T: prioeq: 2: 84 123T: prioeq: 3: 84 124T: prioeq: 4: 84 125 126# Increase prio of T3 127C: schedfifo: 3: 85 128T: prioeq: 0: 85 129T: prioeq: 1: 85 130T: prioeq: 2: 85 131T: prioeq: 3: 85 132T: prioeq: 4: 84 133 134# Reduce prio of T3 135C: schedfifo: 3: 83 136T: prioeq: 0: 84 137T: prioeq: 1: 84 138T: prioeq: 2: 84 139T: prioeq: 3: 84 140T: prioeq: 4: 84 141 142# Signal T4 143C: signal: 4: 0 144W: unlocked: 4: 3 145T: prioeq: 0: 83 146T: prioeq: 1: 83 147T: prioeq: 2: 83 148T: prioeq: 3: 83 149 150# Signal T3 151C: signal: 3: 0 152W: unlocked: 3: 2 153T: prioeq: 0: 82 154T: prioeq: 1: 82 155T: prioeq: 2: 82 156 157# Signal T2 158C: signal: 2: 0 159W: unlocked: 2: 1 160T: prioeq: 0: 81 161T: prioeq: 1: 81 162 163# Signal T1 164C: signal: 1: 0 165W: unlocked: 1: 0 166T: priolt: 0: 1 167 168# Unlock and exit 169C: unlock: 3: 3 170C: unlock: 2: 2 171C: unlock: 1: 1 172C: unlock: 0: 0 173 174W: unlocked: 3: 3 175W: unlocked: 2: 2 176W: unlocked: 1: 1 177W: unlocked: 0: 0 178 179