summaryrefslogtreecommitdiffstats
path: root/cpukit/score/src/schedulerpriority.c
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2014-04-01 11:48:59 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2014-04-03 11:13:26 +0200
commit494c2e300215c4bc539d243d6a5d060e0e2f2ef2 (patch)
tree8ba7c54667cad8331430bf719b4a1bd94ed3ac8b /cpukit/score/src/schedulerpriority.c
parentscore: Rename Priority_bit_map_Control (diff)
downloadrtems-494c2e300215c4bc539d243d6a5d060e0e2f2ef2.tar.bz2
score: Move priority bit map to scheduler instance
Delete global variables _Priority_Major_bit_map and _Priority_Bit_map. This makes it possible to use multiple priority scheduler instances for example with clustered/partitioned scheduling on SMP.
Diffstat (limited to 'cpukit/score/src/schedulerpriority.c')
-rw-r--r--cpukit/score/src/schedulerpriority.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/cpukit/score/src/schedulerpriority.c b/cpukit/score/src/schedulerpriority.c
index f393f4f59b..9d1755d024 100644
--- a/cpukit/score/src/schedulerpriority.c
+++ b/cpukit/score/src/schedulerpriority.c
@@ -23,12 +23,12 @@
void _Scheduler_priority_Initialize(void)
{
- /* allocate ready queue structures */
- Chain_Control *ready_queues = _Workspace_Allocate_or_fatal_error(
- ((size_t) PRIORITY_MAXIMUM + 1) * sizeof(Chain_Control)
+ Scheduler_priority_Control *self = _Workspace_Allocate_or_fatal_error(
+ sizeof( *self ) + PRIORITY_MAXIMUM * sizeof( Chain_Control )
);
- _Scheduler_priority_Ready_queue_initialize( ready_queues );
+ _Priority_bit_map_Initialize( &self->Bit_map );
+ _Scheduler_priority_Ready_queue_initialize( &self->Ready[ 0 ] );
- _Scheduler.information = ready_queues;
+ _Scheduler.information = self;
}