diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2019-03-01 10:10:19 +0100 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2019-03-01 10:12:42 +0100 |
commit | 03b21633d9783110e23932cc783507a2e5a244c9 (patch) | |
tree | 3969b6923d37433a0c98aff3872e008c099d6cdf /cpukit/score | |
parent | bsp/altera-cyclone-v: Enable FIQ for group 0 irqs (diff) | |
download | rtems-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.c | 6 |
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 ); } |