Hello<div><br></div><div>I am creating a Semaphore where Tasks are queued by priority, and yet a Task with lower priority stands in front of a higher priority task.</div><div><br></div><div>Here are the steps I'm following:</div>

<div><br></div><div>1) Create a Semaphore;</div><div><span class="Apple-style-span">2) Task 1, with priority 1, obtains the </span>Semaphore<span class="Apple-style-span">;</span></div><div><span class="Apple-style-span">3) Task 2, with priority 3, tries to obtain the </span>Semaphore<span class="Apple-style-span"> with "wait for ever condition";</span></div>

<div><span class="Apple-style-span">4) Task 3, with priority 2, tries to obtain the </span>Semaphore<span class="Apple-style-span"> with "wait for ever condition";</span></div><div><span class="Apple-style-span">5) Task 1 releases the </span>Semaphore<span class="Apple-style-span">;</span></div>

<div>6) Task 2 obtains the Semaphore. <b>---> This is where Task 3 should obtains the </b><b>Semaphore, because of the Priority<span class="Apple-style-span">.</span></b></div><div><br></div><div>This is how I'm creating the Semaphore:</div>

<div><br></div><div><div><span class="Apple-tab-span" style="white-space:pre">  </span>status = rtems_semaphore_create(</div><div><span class="Apple-tab-span" style="white-space:pre">                     </span>rtems_build_name('S','M','P','R'),</div>

<div><span class="Apple-tab-span" style="white-space:pre">                      </span>1,</div><div><span class="Apple-tab-span" style="white-space:pre">                   </span>RTEMS_PRIORITY | RTEMS_BINARY_SEMAPHORE | RTEMS_GLOBAL,</div><div><span class="Apple-tab-span" style="white-space:pre">                      </span>0,</div>

<div><span class="Apple-tab-span" style="white-space:pre">                      </span>&semaphoreId</div><div><span class="Apple-tab-span" style="white-space:pre">     </span>);</div></div><div><br></div><div><br></div><div>What am I doing wrong?</div>

<div><br></div><div>Best regards</div><div>Cassio</div>