From 4d90289e7169ad96137b7b92b7f05d25bd82ab08 Mon Sep 17 00:00:00 2001 From: Sebastian Huber Date: Fri, 29 Oct 2021 14:17:54 +0200 Subject: score: _Scheduler_SMP_Schedule_highest_ready() Simplify callers of _Scheduler_SMP_Schedule_highest_ready(). Move the node state change and the extraction from scheduled into _Scheduler_SMP_Schedule_highest_ready(). Move the idle thread release to the caller which have more information about the presence of an idle thread. Update #4531. --- cpukit/score/src/scheduleredfsmp.c | 6 ++---- cpukit/score/src/schedulerpriorityaffinitysmp.c | 6 ++---- cpukit/score/src/schedulerprioritysmp.c | 6 ++---- cpukit/score/src/schedulersimplesmp.c | 6 ++---- cpukit/score/src/schedulerstrongapa.c | 6 ++---- 5 files changed, 10 insertions(+), 20 deletions(-) (limited to 'cpukit/score') diff --git a/cpukit/score/src/scheduleredfsmp.c b/cpukit/score/src/scheduleredfsmp.c index 3de3be11a0..93c3c126f7 100644 --- a/cpukit/score/src/scheduleredfsmp.c +++ b/cpukit/score/src/scheduleredfsmp.c @@ -534,8 +534,7 @@ void _Scheduler_EDF_SMP_Block( _Scheduler_EDF_SMP_Get_highest_ready, _Scheduler_EDF_SMP_Move_from_ready_to_scheduled, _Scheduler_EDF_SMP_Allocate_processor, - _Scheduler_EDF_SMP_Get_idle, - _Scheduler_EDF_SMP_Release_idle + _Scheduler_EDF_SMP_Get_idle ); } @@ -691,8 +690,7 @@ void _Scheduler_EDF_SMP_Withdraw_node( _Scheduler_EDF_SMP_Get_highest_ready, _Scheduler_EDF_SMP_Move_from_ready_to_scheduled, _Scheduler_EDF_SMP_Allocate_processor, - _Scheduler_EDF_SMP_Get_idle, - _Scheduler_EDF_SMP_Release_idle + _Scheduler_EDF_SMP_Get_idle ); } diff --git a/cpukit/score/src/schedulerpriorityaffinitysmp.c b/cpukit/score/src/schedulerpriorityaffinitysmp.c index 63d9ae47b1..9a71dfd1ae 100644 --- a/cpukit/score/src/schedulerpriorityaffinitysmp.c +++ b/cpukit/score/src/schedulerpriorityaffinitysmp.c @@ -192,8 +192,7 @@ void _Scheduler_priority_affinity_SMP_Block( _Scheduler_priority_affinity_SMP_Get_highest_ready, _Scheduler_priority_SMP_Move_from_ready_to_scheduled, _Scheduler_SMP_Allocate_processor_exact, - _Scheduler_priority_SMP_Get_idle, - _Scheduler_priority_SMP_Release_idle + _Scheduler_priority_SMP_Get_idle ); /* @@ -528,8 +527,7 @@ void _Scheduler_priority_affinity_SMP_Withdraw_node( _Scheduler_priority_affinity_SMP_Get_highest_ready, _Scheduler_priority_SMP_Move_from_ready_to_scheduled, _Scheduler_SMP_Allocate_processor_lazy, - _Scheduler_priority_SMP_Get_idle, - _Scheduler_priority_SMP_Release_idle + _Scheduler_priority_SMP_Get_idle ); } diff --git a/cpukit/score/src/schedulerprioritysmp.c b/cpukit/score/src/schedulerprioritysmp.c index a33b44587f..14565405ec 100644 --- a/cpukit/score/src/schedulerprioritysmp.c +++ b/cpukit/score/src/schedulerprioritysmp.c @@ -120,8 +120,7 @@ void _Scheduler_priority_SMP_Block( _Scheduler_priority_SMP_Get_highest_ready, _Scheduler_priority_SMP_Move_from_ready_to_scheduled, _Scheduler_SMP_Allocate_processor_lazy, - _Scheduler_priority_SMP_Get_idle, - _Scheduler_priority_SMP_Release_idle + _Scheduler_priority_SMP_Get_idle ); } @@ -274,8 +273,7 @@ void _Scheduler_priority_SMP_Withdraw_node( _Scheduler_priority_SMP_Get_highest_ready, _Scheduler_priority_SMP_Move_from_ready_to_scheduled, _Scheduler_SMP_Allocate_processor_lazy, - _Scheduler_priority_SMP_Get_idle, - _Scheduler_priority_SMP_Release_idle + _Scheduler_priority_SMP_Get_idle ); } diff --git a/cpukit/score/src/schedulersimplesmp.c b/cpukit/score/src/schedulersimplesmp.c index 086d00094d..ebbf00bbc4 100644 --- a/cpukit/score/src/schedulersimplesmp.c +++ b/cpukit/score/src/schedulersimplesmp.c @@ -213,8 +213,7 @@ void _Scheduler_simple_SMP_Block( _Scheduler_simple_SMP_Get_highest_ready, _Scheduler_simple_SMP_Move_from_ready_to_scheduled, _Scheduler_SMP_Allocate_processor_lazy, - _Scheduler_simple_SMP_Get_idle, - _Scheduler_simple_SMP_Release_idle + _Scheduler_simple_SMP_Get_idle ); } @@ -367,8 +366,7 @@ void _Scheduler_simple_SMP_Withdraw_node( _Scheduler_simple_SMP_Get_highest_ready, _Scheduler_simple_SMP_Move_from_ready_to_scheduled, _Scheduler_SMP_Allocate_processor_lazy, - _Scheduler_simple_SMP_Get_idle, - _Scheduler_simple_SMP_Release_idle + _Scheduler_simple_SMP_Get_idle ); } diff --git a/cpukit/score/src/schedulerstrongapa.c b/cpukit/score/src/schedulerstrongapa.c index 265ef1a797..c897652320 100644 --- a/cpukit/score/src/schedulerstrongapa.c +++ b/cpukit/score/src/schedulerstrongapa.c @@ -920,8 +920,7 @@ void _Scheduler_strong_APA_Block( _Scheduler_strong_APA_Get_highest_ready, _Scheduler_strong_APA_Move_from_ready_to_scheduled, _Scheduler_strong_APA_Allocate_processor, - _Scheduler_strong_APA_Get_idle, - _Scheduler_strong_APA_Release_idle + _Scheduler_strong_APA_Get_idle ); } @@ -1014,8 +1013,7 @@ void _Scheduler_strong_APA_Withdraw_node( _Scheduler_strong_APA_Get_highest_ready, _Scheduler_strong_APA_Move_from_ready_to_scheduled, _Scheduler_strong_APA_Allocate_processor, - _Scheduler_strong_APA_Get_idle, - _Scheduler_strong_APA_Release_idle + _Scheduler_strong_APA_Get_idle ); } -- cgit v1.2.3