1*53ee8cc1Swenshuai.xi# 2*53ee8cc1Swenshuai.xi# rt-mutex test 3*53ee8cc1Swenshuai.xi# 4*53ee8cc1Swenshuai.xi# Op: C(ommand)/T(est)/W(ait) 5*53ee8cc1Swenshuai.xi# | opcode 6*53ee8cc1Swenshuai.xi# | | threadid: 0-7 7*53ee8cc1Swenshuai.xi# | | | opcode argument 8*53ee8cc1Swenshuai.xi# | | | | 9*53ee8cc1Swenshuai.xi# C: lock: 0: 0 10*53ee8cc1Swenshuai.xi# 11*53ee8cc1Swenshuai.xi# Commands 12*53ee8cc1Swenshuai.xi# 13*53ee8cc1Swenshuai.xi# opcode opcode argument 14*53ee8cc1Swenshuai.xi# schedother nice value 15*53ee8cc1Swenshuai.xi# schedfifo priority 16*53ee8cc1Swenshuai.xi# lock lock nr (0-7) 17*53ee8cc1Swenshuai.xi# locknowait lock nr (0-7) 18*53ee8cc1Swenshuai.xi# lockint lock nr (0-7) 19*53ee8cc1Swenshuai.xi# lockintnowait lock nr (0-7) 20*53ee8cc1Swenshuai.xi# lockcont lock nr (0-7) 21*53ee8cc1Swenshuai.xi# unlock lock nr (0-7) 22*53ee8cc1Swenshuai.xi# signal thread to signal (0-7) 23*53ee8cc1Swenshuai.xi# reset 0 24*53ee8cc1Swenshuai.xi# resetevent 0 25*53ee8cc1Swenshuai.xi# 26*53ee8cc1Swenshuai.xi# Tests / Wait 27*53ee8cc1Swenshuai.xi# 28*53ee8cc1Swenshuai.xi# opcode opcode argument 29*53ee8cc1Swenshuai.xi# 30*53ee8cc1Swenshuai.xi# prioeq priority 31*53ee8cc1Swenshuai.xi# priolt priority 32*53ee8cc1Swenshuai.xi# priogt priority 33*53ee8cc1Swenshuai.xi# nprioeq normal priority 34*53ee8cc1Swenshuai.xi# npriolt normal priority 35*53ee8cc1Swenshuai.xi# npriogt normal priority 36*53ee8cc1Swenshuai.xi# locked lock nr (0-7) 37*53ee8cc1Swenshuai.xi# blocked lock nr (0-7) 38*53ee8cc1Swenshuai.xi# blockedwake lock nr (0-7) 39*53ee8cc1Swenshuai.xi# unlocked lock nr (0-7) 40*53ee8cc1Swenshuai.xi# opcodeeq command opcode or number 41*53ee8cc1Swenshuai.xi# opcodelt number 42*53ee8cc1Swenshuai.xi# opcodegt number 43*53ee8cc1Swenshuai.xi# eventeq number 44*53ee8cc1Swenshuai.xi# eventgt number 45*53ee8cc1Swenshuai.xi# eventlt number 46*53ee8cc1Swenshuai.xi 47*53ee8cc1Swenshuai.xi# 48*53ee8cc1Swenshuai.xi# 5 threads 4 lock PI - modify priority of blocked threads 49*53ee8cc1Swenshuai.xi# 50*53ee8cc1Swenshuai.xiC: resetevent: 0: 0 51*53ee8cc1Swenshuai.xiW: opcodeeq: 0: 0 52*53ee8cc1Swenshuai.xi 53*53ee8cc1Swenshuai.xi# Set schedulers 54*53ee8cc1Swenshuai.xiC: schedother: 0: 0 55*53ee8cc1Swenshuai.xiC: schedfifo: 1: 81 56*53ee8cc1Swenshuai.xiC: schedfifo: 2: 82 57*53ee8cc1Swenshuai.xiC: schedfifo: 3: 83 58*53ee8cc1Swenshuai.xiC: schedfifo: 4: 84 59*53ee8cc1Swenshuai.xi 60*53ee8cc1Swenshuai.xi# T0 lock L0 61*53ee8cc1Swenshuai.xiC: locknowait: 0: 0 62*53ee8cc1Swenshuai.xiW: locked: 0: 0 63*53ee8cc1Swenshuai.xi 64*53ee8cc1Swenshuai.xi# T1 lock L1 65*53ee8cc1Swenshuai.xiC: locknowait: 1: 1 66*53ee8cc1Swenshuai.xiW: locked: 1: 1 67*53ee8cc1Swenshuai.xi 68*53ee8cc1Swenshuai.xi# T1 lock L0 69*53ee8cc1Swenshuai.xiC: lockintnowait: 1: 0 70*53ee8cc1Swenshuai.xiW: blocked: 1: 0 71*53ee8cc1Swenshuai.xiT: prioeq: 0: 81 72*53ee8cc1Swenshuai.xi 73*53ee8cc1Swenshuai.xi# T2 lock L2 74*53ee8cc1Swenshuai.xiC: locknowait: 2: 2 75*53ee8cc1Swenshuai.xiW: locked: 2: 2 76*53ee8cc1Swenshuai.xi 77*53ee8cc1Swenshuai.xi# T2 lock L1 78*53ee8cc1Swenshuai.xiC: lockintnowait: 2: 1 79*53ee8cc1Swenshuai.xiW: blocked: 2: 1 80*53ee8cc1Swenshuai.xiT: prioeq: 0: 82 81*53ee8cc1Swenshuai.xiT: prioeq: 1: 82 82*53ee8cc1Swenshuai.xi 83*53ee8cc1Swenshuai.xi# T3 lock L3 84*53ee8cc1Swenshuai.xiC: locknowait: 3: 3 85*53ee8cc1Swenshuai.xiW: locked: 3: 3 86*53ee8cc1Swenshuai.xi 87*53ee8cc1Swenshuai.xi# T3 lock L2 88*53ee8cc1Swenshuai.xiC: lockintnowait: 3: 2 89*53ee8cc1Swenshuai.xiW: blocked: 3: 2 90*53ee8cc1Swenshuai.xiT: prioeq: 0: 83 91*53ee8cc1Swenshuai.xiT: prioeq: 1: 83 92*53ee8cc1Swenshuai.xiT: prioeq: 2: 83 93*53ee8cc1Swenshuai.xi 94*53ee8cc1Swenshuai.xi# T4 lock L3 95*53ee8cc1Swenshuai.xiC: lockintnowait: 4: 3 96*53ee8cc1Swenshuai.xiW: blocked: 4: 3 97*53ee8cc1Swenshuai.xiT: prioeq: 0: 84 98*53ee8cc1Swenshuai.xiT: prioeq: 1: 84 99*53ee8cc1Swenshuai.xiT: prioeq: 2: 84 100*53ee8cc1Swenshuai.xiT: prioeq: 3: 84 101*53ee8cc1Swenshuai.xi 102*53ee8cc1Swenshuai.xi# Reduce prio of T4 103*53ee8cc1Swenshuai.xiC: schedfifo: 4: 80 104*53ee8cc1Swenshuai.xiT: prioeq: 0: 83 105*53ee8cc1Swenshuai.xiT: prioeq: 1: 83 106*53ee8cc1Swenshuai.xiT: prioeq: 2: 83 107*53ee8cc1Swenshuai.xiT: prioeq: 3: 83 108*53ee8cc1Swenshuai.xiT: prioeq: 4: 80 109*53ee8cc1Swenshuai.xi 110*53ee8cc1Swenshuai.xi# Increase prio of T4 111*53ee8cc1Swenshuai.xiC: schedfifo: 4: 84 112*53ee8cc1Swenshuai.xiT: prioeq: 0: 84 113*53ee8cc1Swenshuai.xiT: prioeq: 1: 84 114*53ee8cc1Swenshuai.xiT: prioeq: 2: 84 115*53ee8cc1Swenshuai.xiT: prioeq: 3: 84 116*53ee8cc1Swenshuai.xiT: prioeq: 4: 84 117*53ee8cc1Swenshuai.xi 118*53ee8cc1Swenshuai.xi# Reduce prio of T3 119*53ee8cc1Swenshuai.xiC: schedfifo: 3: 80 120*53ee8cc1Swenshuai.xiT: prioeq: 0: 84 121*53ee8cc1Swenshuai.xiT: prioeq: 1: 84 122*53ee8cc1Swenshuai.xiT: prioeq: 2: 84 123*53ee8cc1Swenshuai.xiT: prioeq: 3: 84 124*53ee8cc1Swenshuai.xiT: prioeq: 4: 84 125*53ee8cc1Swenshuai.xi 126*53ee8cc1Swenshuai.xi# Increase prio of T3 127*53ee8cc1Swenshuai.xiC: schedfifo: 3: 85 128*53ee8cc1Swenshuai.xiT: prioeq: 0: 85 129*53ee8cc1Swenshuai.xiT: prioeq: 1: 85 130*53ee8cc1Swenshuai.xiT: prioeq: 2: 85 131*53ee8cc1Swenshuai.xiT: prioeq: 3: 85 132*53ee8cc1Swenshuai.xiT: prioeq: 4: 84 133*53ee8cc1Swenshuai.xi 134*53ee8cc1Swenshuai.xi# Reduce prio of T3 135*53ee8cc1Swenshuai.xiC: schedfifo: 3: 83 136*53ee8cc1Swenshuai.xiT: prioeq: 0: 84 137*53ee8cc1Swenshuai.xiT: prioeq: 1: 84 138*53ee8cc1Swenshuai.xiT: prioeq: 2: 84 139*53ee8cc1Swenshuai.xiT: prioeq: 3: 84 140*53ee8cc1Swenshuai.xiT: prioeq: 4: 84 141*53ee8cc1Swenshuai.xi 142*53ee8cc1Swenshuai.xi# Signal T4 143*53ee8cc1Swenshuai.xiC: signal: 4: 0 144*53ee8cc1Swenshuai.xiW: unlocked: 4: 3 145*53ee8cc1Swenshuai.xiT: prioeq: 0: 83 146*53ee8cc1Swenshuai.xiT: prioeq: 1: 83 147*53ee8cc1Swenshuai.xiT: prioeq: 2: 83 148*53ee8cc1Swenshuai.xiT: prioeq: 3: 83 149*53ee8cc1Swenshuai.xi 150*53ee8cc1Swenshuai.xi# Signal T3 151*53ee8cc1Swenshuai.xiC: signal: 3: 0 152*53ee8cc1Swenshuai.xiW: unlocked: 3: 2 153*53ee8cc1Swenshuai.xiT: prioeq: 0: 82 154*53ee8cc1Swenshuai.xiT: prioeq: 1: 82 155*53ee8cc1Swenshuai.xiT: prioeq: 2: 82 156*53ee8cc1Swenshuai.xi 157*53ee8cc1Swenshuai.xi# Signal T2 158*53ee8cc1Swenshuai.xiC: signal: 2: 0 159*53ee8cc1Swenshuai.xiW: unlocked: 2: 1 160*53ee8cc1Swenshuai.xiT: prioeq: 0: 81 161*53ee8cc1Swenshuai.xiT: prioeq: 1: 81 162*53ee8cc1Swenshuai.xi 163*53ee8cc1Swenshuai.xi# Signal T1 164*53ee8cc1Swenshuai.xiC: signal: 1: 0 165*53ee8cc1Swenshuai.xiW: unlocked: 1: 0 166*53ee8cc1Swenshuai.xiT: priolt: 0: 1 167*53ee8cc1Swenshuai.xi 168*53ee8cc1Swenshuai.xi# Unlock and exit 169*53ee8cc1Swenshuai.xiC: unlock: 3: 3 170*53ee8cc1Swenshuai.xiC: unlock: 2: 2 171*53ee8cc1Swenshuai.xiC: unlock: 1: 1 172*53ee8cc1Swenshuai.xiC: unlock: 0: 0 173*53ee8cc1Swenshuai.xi 174*53ee8cc1Swenshuai.xiW: unlocked: 3: 3 175*53ee8cc1Swenshuai.xiW: unlocked: 2: 2 176*53ee8cc1Swenshuai.xiW: unlocked: 1: 1 177*53ee8cc1Swenshuai.xiW: unlocked: 0: 0 178*53ee8cc1Swenshuai.xi 179