summaryrefslogtreecommitdiffstats
path: root/cpukit/score
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2021-10-29 14:17:54 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2021-11-23 11:00:28 +0100
commit4d90289e7169ad96137b7b92b7f05d25bd82ab08 (patch)
tree2c4257fcc332ba8e6793258b837b4c1141420109 /cpukit/score
parentscore: Remove victim thread from CPU allocation (diff)
downloadrtems-4d90289e7169ad96137b7b92b7f05d25bd82ab08.tar.bz2
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.
Diffstat (limited to 'cpukit/score')
-rw-r--r--cpukit/score/src/scheduleredfsmp.c6
-rw-r--r--cpukit/score/src/schedulerpriorityaffinitysmp.c6
-rw-r--r--cpukit/score/src/schedulerprioritysmp.c6
-rw-r--r--cpukit/score/src/schedulersimplesmp.c6
-rw-r--r--cpukit/score/src/schedulerstrongapa.c6
5 files changed, 10 insertions, 20 deletions
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
);
}