[RTEMS Project] #4679: Use priority inheritance for thread join
RTEMS trac
trac at rtems.org
Thu Jul 28 05:45:19 UTC 2022
#4679: Use priority inheritance for thread join
-----------------------------+------------------------------
Reporter: Sebastian Huber | Owner: Sebastian Huber
Type: enhancement | Status: closed
Priority: normal | Milestone: 6.1
Component: score | Version: 6
Severity: normal | Resolution: fixed
Keywords: | Blocked By:
Blocking: |
-----------------------------+------------------------------
Changes (by Sebastian Huber <sebastian.huber@…>):
* status: assigned => closed
* resolution: => fixed
Comment:
In [changeset:"31036f1dc8a963fb0bc3fc103f63028988314fea/rtems"
31036f1d/rtems]:
{{{
#!CommitTicketReference repository="rtems"
revision="31036f1dc8a963fb0bc3fc103f63028988314fea"
score: Use priority inheritance for thread join
Threads may join the thread termination of another thread using the
pthread_join() or rtems_task_delete() directives. The thread cancel
operation
used a special case priority boosting mechanism implemented by
_Thread_Raise_real_priority(). The problem was that this approach
* is not transitive,
* does not account for priority adjustments of the calling task
while waiting for the join,
* does not support clustered scheduling, and
* does not detect deadlocks.
All these problems are fixed by using a priority inheritance thread queue
for
the join operation.
Close #4679.
}}}
--
Ticket URL: <http://devel.rtems.org/ticket/4679#comment:4>
RTEMS Project <http://www.rtems.org/>
RTEMS Project
More information about the bugs
mailing list