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 0 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# 2 threads 1 lock 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: schedfifo: 0: 80 55*53ee8cc1Swenshuai.xiC: schedfifo: 1: 80 56*53ee8cc1Swenshuai.xi 57*53ee8cc1Swenshuai.xi# T0 lock L0 58*53ee8cc1Swenshuai.xiC: locknowait: 0: 0 59*53ee8cc1Swenshuai.xiC: locknowait: 1: 0 60*53ee8cc1Swenshuai.xiW: locked: 0: 0 61*53ee8cc1Swenshuai.xiW: blocked: 1: 0 62*53ee8cc1Swenshuai.xiT: prioeq: 0: 80 63*53ee8cc1Swenshuai.xi 64*53ee8cc1Swenshuai.xi# T0 unlock L0 65*53ee8cc1Swenshuai.xiC: unlock: 0: 0 66*53ee8cc1Swenshuai.xiW: locked: 1: 0 67*53ee8cc1Swenshuai.xi 68*53ee8cc1Swenshuai.xi# Verify T0 69*53ee8cc1Swenshuai.xiW: unlocked: 0: 0 70*53ee8cc1Swenshuai.xiT: prioeq: 0: 80 71*53ee8cc1Swenshuai.xi 72*53ee8cc1Swenshuai.xi# Unlock 73*53ee8cc1Swenshuai.xiC: unlock: 1: 0 74*53ee8cc1Swenshuai.xiW: unlocked: 1: 0 75*53ee8cc1Swenshuai.xi 76*53ee8cc1Swenshuai.xi# T1,T0 lock L0 77*53ee8cc1Swenshuai.xiC: locknowait: 1: 0 78*53ee8cc1Swenshuai.xiC: locknowait: 0: 0 79*53ee8cc1Swenshuai.xiW: locked: 1: 0 80*53ee8cc1Swenshuai.xiW: blocked: 0: 0 81*53ee8cc1Swenshuai.xiT: prioeq: 1: 80 82*53ee8cc1Swenshuai.xi 83*53ee8cc1Swenshuai.xi# T1 unlock L0 84*53ee8cc1Swenshuai.xiC: unlock: 1: 0 85*53ee8cc1Swenshuai.xiW: locked: 0: 0 86*53ee8cc1Swenshuai.xi 87*53ee8cc1Swenshuai.xi# Verify T1 88*53ee8cc1Swenshuai.xiW: unlocked: 1: 0 89*53ee8cc1Swenshuai.xiT: prioeq: 1: 80 90*53ee8cc1Swenshuai.xi 91*53ee8cc1Swenshuai.xi# Unlock and exit 92*53ee8cc1Swenshuai.xiC: unlock: 0: 0 93*53ee8cc1Swenshuai.xiW: unlocked: 0: 0 94*53ee8cc1Swenshuai.xi 95