summaryrefslogtreecommitdiffstats
path: root/cpukit/score
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2019-03-01 10:10:19 +0100
committerSebastian Huber <sebastian.huber@embedded-brains.de>2019-03-01 10:12:42 +0100
commit03b21633d9783110e23932cc783507a2e5a244c9 (patch)
tree3969b6923d37433a0c98aff3872e008c099d6cdf /cpukit/score
parentbsp/altera-cyclone-v: Enable FIQ for group 0 irqs (diff)
downloadrtems-03b21633d9783110e23932cc783507a2e5a244c9.tar.bz2
score: Fix _Scheduler_EDF_Cancel_job()
Remove the priority node only in case it is active.
Diffstat (limited to 'cpukit/score')
-rw-r--r--cpukit/score/src/scheduleredfreleasejob.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/cpukit/score/src/scheduleredfreleasejob.c b/cpukit/score/src/scheduleredfreleasejob.c
index d7865ff5fb..f95e8bdc0b 100644
--- a/cpukit/score/src/scheduleredfreleasejob.c
+++ b/cpukit/score/src/scheduleredfreleasejob.c
@@ -84,8 +84,10 @@ void _Scheduler_EDF_Cancel_job(
_Thread_Wait_acquire_critical( the_thread, queue_context );
- _Thread_Priority_remove( the_thread, priority_node, queue_context );
- _Priority_Node_set_inactive( priority_node );
+ if ( _Priority_Node_is_active( priority_node ) ) {
+ _Thread_Priority_remove( the_thread, priority_node, queue_context );
+ _Priority_Node_set_inactive( priority_node );
+ }
_Thread_Wait_release_critical( the_thread, queue_context );
}