[rtems commit] rtems: Fix rtems_task_create() scheduler selection
Sebastian Huber
sebh at rtems.org
Thu Nov 10 08:59:05 UTC 2016
Module: rtems
Branch: master
Commit: 2f5ac5b5075e2efe8fc2cdbf151ee36939e82003
Changeset: http://git.rtems.org/rtems/commit/?id=2f5ac5b5075e2efe8fc2cdbf151ee36939e82003
Author: Sebastian Huber <sebastian.huber at embedded-brains.de>
Date: Fri Nov 4 15:26:52 2016 +0100
rtems: Fix rtems_task_create() scheduler selection
Use the home scheduler of the executing thread for the created thread.
This is in line with pthread_create(). Using the current processor may
pick up an unexpected scheduler in case of a temporary migration, e.g.
due to locking protocols.
---
cpukit/rtems/src/taskcreate.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/cpukit/rtems/src/taskcreate.c b/cpukit/rtems/src/taskcreate.c
index e231d4a..2695382 100644
--- a/cpukit/rtems/src/taskcreate.c
+++ b/cpukit/rtems/src/taskcreate.c
@@ -90,7 +90,7 @@ rtems_status_code rtems_task_create(
}
}
- scheduler = _Scheduler_Get_by_CPU_index( _SMP_Get_current_processor() );
+ scheduler = _Thread_Scheduler_get_home( _Thread_Get_executing() );
priority = _RTEMS_Priority_To_core( scheduler, initial_priority, &valid );
if ( !valid ) {
More information about the vc
mailing list