From 901bc146b0d7440792ba0d39433c1abee94a9679 Mon Sep 17 00:00:00 2001 From: Tian Ye Date: Thu, 12 May 2022 10:48:55 +0800 Subject: score: Add SMP priority affinity scheduler yield --- cpukit/score/src/schedulerpriorityaffinitysmp.c | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'cpukit/score/src/schedulerpriorityaffinitysmp.c') diff --git a/cpukit/score/src/schedulerpriorityaffinitysmp.c b/cpukit/score/src/schedulerpriorityaffinitysmp.c index 358722e130..5d6d65ffba 100644 --- a/cpukit/score/src/schedulerpriorityaffinitysmp.c +++ b/cpukit/score/src/schedulerpriorityaffinitysmp.c @@ -619,6 +619,24 @@ Thread_Control *_Scheduler_priority_affinity_SMP_Remove_processor( ); } +void _Scheduler_priority_affinity_SMP_Yield( + const Scheduler_Control *scheduler, + Thread_Control *thread, + Scheduler_Node *node +) +{ + Scheduler_Context *context = _Scheduler_Get_context( scheduler ); + + _Scheduler_SMP_Yield( + context, + thread, + node, + _Scheduler_priority_SMP_Extract_from_ready, + _Scheduler_priority_affinity_SMP_Enqueue, + _Scheduler_priority_affinity_SMP_Enqueue_scheduled + ); +} + Status_Control _Scheduler_priority_affinity_SMP_Set_affinity( const Scheduler_Control *scheduler, Thread_Control *thread, -- cgit v1.2.3