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# 3 threads 1 lock PI 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: schedother: 1: 0 56*53ee8cc1Swenshuai.xiC: schedfifo: 2: 82 57*53ee8cc1Swenshuai.xi 58*53ee8cc1Swenshuai.xi# T0 lock L0 59*53ee8cc1Swenshuai.xiC: locknowait: 0: 0 60*53ee8cc1Swenshuai.xiW: locked: 0: 0 61*53ee8cc1Swenshuai.xi 62*53ee8cc1Swenshuai.xi# T1 lock L0 63*53ee8cc1Swenshuai.xiC: locknowait: 1: 0 64*53ee8cc1Swenshuai.xiW: blocked: 1: 0 65*53ee8cc1Swenshuai.xiT: priolt: 0: 1 66*53ee8cc1Swenshuai.xi 67*53ee8cc1Swenshuai.xi# T2 lock L0 68*53ee8cc1Swenshuai.xiC: locknowait: 2: 0 69*53ee8cc1Swenshuai.xiW: blocked: 2: 0 70*53ee8cc1Swenshuai.xiT: prioeq: 0: 82 71*53ee8cc1Swenshuai.xi 72*53ee8cc1Swenshuai.xi# T0 unlock L0 73*53ee8cc1Swenshuai.xiC: unlock: 0: 0 74*53ee8cc1Swenshuai.xi 75*53ee8cc1Swenshuai.xi# Wait until T2 got the lock 76*53ee8cc1Swenshuai.xiW: locked: 2: 0 77*53ee8cc1Swenshuai.xiW: unlocked: 0: 0 78*53ee8cc1Swenshuai.xiT: priolt: 0: 1 79*53ee8cc1Swenshuai.xi 80*53ee8cc1Swenshuai.xi# T2 unlock L0 81*53ee8cc1Swenshuai.xiC: unlock: 2: 0 82*53ee8cc1Swenshuai.xi 83*53ee8cc1Swenshuai.xiW: unlocked: 2: 0 84*53ee8cc1Swenshuai.xiW: locked: 1: 0 85*53ee8cc1Swenshuai.xi 86*53ee8cc1Swenshuai.xiC: unlock: 1: 0 87*53ee8cc1Swenshuai.xiW: unlocked: 1: 0 88