From ca1e546e7772838b20d0792155e2c71514d6b5d3 Mon Sep 17 00:00:00 2001 From: Sebastian Huber Date: Thu, 2 Feb 2017 16:24:05 +0100 Subject: score: Improve scheduler helping protocol Only register ask for help requests in the scheduler unblock and yield operations. The actual ask for help operation is carried out during _Thread_Do_dispatch() on a processor related to the thread. This yields a better separation of scheduler instances. A thread of one scheduler instance should not be forced to carry out too much work for threads on other scheduler instances. Update #2556. --- cpukit/score/src/schedulersimplesmp.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'cpukit/score/src/schedulersimplesmp.c') diff --git a/cpukit/score/src/schedulersimplesmp.c b/cpukit/score/src/schedulersimplesmp.c index 221fcc3df5..41eb491019 100644 --- a/cpukit/score/src/schedulersimplesmp.c +++ b/cpukit/score/src/schedulersimplesmp.c @@ -281,7 +281,7 @@ static bool _Scheduler_simple_SMP_Enqueue_scheduled_fifo( ); } -bool _Scheduler_simple_SMP_Unblock( +void _Scheduler_simple_SMP_Unblock( const Scheduler_Control *scheduler, Thread_Control *thread, Scheduler_Node *node @@ -289,7 +289,7 @@ bool _Scheduler_simple_SMP_Unblock( { Scheduler_Context *context = _Scheduler_Get_context( scheduler ); - return _Scheduler_SMP_Unblock( + _Scheduler_SMP_Unblock( context, thread, node, @@ -417,7 +417,7 @@ Thread_Control *_Scheduler_simple_SMP_Remove_processor( ); } -bool _Scheduler_simple_SMP_Yield( +void _Scheduler_simple_SMP_Yield( const Scheduler_Control *scheduler, Thread_Control *thread, Scheduler_Node *node @@ -425,7 +425,7 @@ bool _Scheduler_simple_SMP_Yield( { Scheduler_Context *context = _Scheduler_Get_context( scheduler ); - return _Scheduler_SMP_Yield( + _Scheduler_SMP_Yield( context, thread, node, -- cgit v1.2.3