[rtems commit] score: Fix thread queue race condition
Sebastian Huber
sebh at rtems.org
Thu Apr 9 12:11:35 UTC 2015
Module: rtems
Branch: master
Commit: 41814fa648e2c8ab3fb2359e4617657e74590b38
Changeset: http://git.rtems.org/rtems/commit/?id=41814fa648e2c8ab3fb2359e4617657e74590b38
Author: Sebastian Huber <sebastian.huber at embedded-brains.de>
Date: Thu Apr 9 13:54:17 2015 +0200
score: Fix thread queue race condition
On uni-processor configurations the change of the thread blocking state
in _Thread_queue_Requeue_priority() did no harm and was simply useless.
However on SMP configurations this resulted in invalid state changes
leading to a wrong resource ownership.
---
cpukit/score/src/threadqenqueue.c | 1 -
1 file changed, 1 deletion(-)
diff --git a/cpukit/score/src/threadqenqueue.c b/cpukit/score/src/threadqenqueue.c
index 21bdcdb..c059556 100644
--- a/cpukit/score/src/threadqenqueue.c
+++ b/cpukit/score/src/threadqenqueue.c
@@ -92,7 +92,6 @@ static void _Thread_queue_Requeue_priority(
{
Thread_queue_Control *tq = context;
- _Thread_queue_Enter_critical_section( tq );
_RBTree_Extract( &tq->Queues.Priority, &the_thread->RBNode );
_RBTree_Insert(
&tq->Queues.Priority,
More information about the vc
mailing list