<font face="Default Sans Serif,Verdana,Arial,Helvetica,sans-serif" size="2"><div style="font-family: "lucida Grande", Verdana, "Microsoft YaHei"; font-size: 14px;">Hi,</div><div style="font-family: "lucida Grande", Verdana, "Microsoft YaHei"; font-size: 14px;">    I have some questions about rtems priority inherit policy.</div><div style="font-family: "lucida Grande", Verdana, "Microsoft YaHei"; font-size: 14px;">    <b>Question 1:</b></div><div style="font-family: "lucida Grande", Verdana, "Microsoft YaHei"; font-size: 14px;">        Assuming that:task1(priority 7)¡¢task2(priority 4)¡¢mutex1£¨rtems mutex use inherit£©.</div><div style="font-family: "lucida Grande", Verdana, "Microsoft YaHei"; font-size: 14px;">task1 and task2 using mutex1 for resources mutex. <b>After get mutex1, task1 will temp change it's priority  to 3 do something, and recover it's priority after things done</b>.</div><div style="font-family: "lucida Grande", Verdana, "Microsoft YaHei"; font-size: 14px;">        step1:task1 get mutex1 successfully;</div><div style="font-family: "lucida Grande", Verdana, "Microsoft YaHei"; font-size: 14px;">        step2:task2 running attemp to get mutex1, it will promote task1's priority to 4 because of priority inherit policy;</div><div style="font-family: "lucida Grande", Verdana, "Microsoft YaHei"; font-size: 14px;">        step3:task1 continue running with priority 4;</div><div style="font-family: "lucida Grande", Verdana, "Microsoft YaHei"; font-size: 14px;">        step4:task1 call <b>rtems_task_get_priority</b> to get current priority, it will return 4, save as old priority;</div><div style="font-family: "lucida Grande", Verdana, "Microsoft YaHei"; font-size: 14px;">        step5:task1 temp change(<b>rtems_task_set_priority</b>) self priority to 3;</div><div style="font-family: "lucida Grande", Verdana, "Microsoft YaHei"; font-size: 14px;">        step6:task1 resume step4's priority(<b>rtems_task_set_priority</b>), <b>it will set 4 to task1, rather than priority 7</b>.</div><div style="font-family: "lucida Grande", Verdana, "Microsoft YaHei"; font-size: 14px;">    So, i want to provide a intf function to get rtems task Real priority rather than current priority to solve this problem.</div><div style="font-family: "lucida Grande", Verdana, "Microsoft YaHei"; font-size: 14px;"><br></div><div style="font-family: "lucida Grande", Verdana, "Microsoft YaHei"; font-size: 14px;">    <b>Question 2:</b></div><div style="font-family: "lucida Grande", Verdana, "Microsoft YaHei"; font-size: 14px;">        Assuming that:task1(priority 7)¡¢task2(priority 4)¡¢mutex1£¨rtems mutex use inherit£©¡¢semaphore1(use priority ceiling and it's priority is 6).</div><div style="font-family: "lucida Grande", Verdana, "Microsoft YaHei"; font-size: 14px;">task1 and task2 using mutex1 for resources mutex. After get mutex1, task1 will continue get semaphore1, however task2 will never attempt to get semaphore1.</div><div style="font-family: "lucida Grande", Verdana, "Microsoft YaHei"; font-size: 14px;">        step1:task1 get mutex1 successfully;</div><div style="font-family: "lucida Grande", Verdana, "Microsoft YaHei"; font-size: 14px;">        step2:task2 running and attemp to get mutex1, it will promote task1's priority to 4 because of priority inherit policy;</div><div style="font-family: "lucida Grande", Verdana, "Microsoft YaHei"; font-size: 14px;">        step3:task1 continue running and attempt to get semaphore1(ceiling priority is 6), rtems_semaphore_obtain will return failed because of task1 priority is greater than semaphore1. </div><div style="font-family: "lucida Grande", Verdana, "Microsoft YaHei"; font-size: 14px;">    So, occasionally task1 get semaphore1 failed.</div><div style="font-family: "lucida Grande", Verdana, "Microsoft YaHei"; font-size: 14px;"><br></div><div style=""><font face="lucida Grande, Verdana, Microsoft YaHei"><span style="font-size: 14px;">regards</span></font><br><font face="lucida Grande, Verdana, Microsoft YaHei"><span style="font-size: 14px;">---</span></font><br><font face="Default Monospace, Courier New, Courier, monospace" size="3"><b>Tianye Ye</b></font></div><div></div></font>