diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2016-05-19 11:20:58 +0200 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2016-05-20 16:11:02 +0200 |
commit | 7dfb4b970cbd22cef170b2f45a41f445406a2ce5 (patch) | |
tree | d26b77b23f3e95c52b2b89e147b4e2dd557395b7 /cpukit/sapi/include/rtems/scheduler.h | |
parent | fat: Fix for invalid cluster sizes (diff) | |
download | rtems-7dfb4b970cbd22cef170b2f45a41f445406a2ce5.tar.bz2 |
score: Add per scheduler instance maximum priority
The priority values are only valid within a scheduler instance. Thus,
the maximum priority value must be defined per scheduler instance. The
first scheduler instance defines PRIORITY_MAXIMUM. This implies that
RTEMS_MAXIMUM_PRIORITY and POSIX_SCHEDULER_MAXIMUM_PRIORITY are only
valid for threads of the first scheduler instance. Further
API/implementation changes are necessary to fix this.
Update #2556.
Diffstat (limited to '')
-rw-r--r-- | cpukit/sapi/include/rtems/scheduler.h | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/cpukit/sapi/include/rtems/scheduler.h b/cpukit/sapi/include/rtems/scheduler.h index 39dff903d4..0b20aab55e 100644 --- a/cpukit/sapi/include/rtems/scheduler.h +++ b/cpukit/sapi/include/rtems/scheduler.h @@ -5,7 +5,7 @@ */ /* - * Copyright (c) 2014 embedded brains GmbH. All rights reserved. + * Copyright (c) 2014, 2016 embedded brains GmbH. All rights reserved. * * embedded brains GmbH * Dornierstr. 4 @@ -70,6 +70,7 @@ { \ &RTEMS_SCHEDULER_CONTEXT_CBS_NAME( name ).Base, \ SCHEDULER_CBS_ENTRY_POINTS, \ + SCHEDULER_CBS_MAXIMUM_PRIORITY, \ ( obj_name ) \ } #endif @@ -87,6 +88,7 @@ { \ &RTEMS_SCHEDULER_CONTEXT_EDF_NAME( name ).Base, \ SCHEDULER_EDF_ENTRY_POINTS, \ + SCHEDULER_EDF_MAXIMUM_PRIORITY, \ ( obj_name ) \ } #endif @@ -107,6 +109,9 @@ { \ &RTEMS_SCHEDULER_CONTEXT_PRIORITY_NAME( name ).Base.Base, \ SCHEDULER_PRIORITY_ENTRY_POINTS, \ + RTEMS_ARRAY_SIZE( \ + RTEMS_SCHEDULER_CONTEXT_PRIORITY_NAME( name ).Ready \ + ) - 1, \ ( obj_name ) \ } #endif @@ -127,6 +132,9 @@ { \ &RTEMS_SCHEDULER_CONTEXT_PRIORITY_AFFINITY_SMP_NAME( name ).Base.Base.Base, \ SCHEDULER_PRIORITY_AFFINITY_SMP_ENTRY_POINTS, \ + RTEMS_ARRAY_SIZE( \ + RTEMS_SCHEDULER_CONTEXT_PRIORITY_AFFINITY_SMP_NAME( name ).Ready \ + ) - 1, \ ( obj_name ) \ } #endif @@ -147,6 +155,9 @@ { \ &RTEMS_SCHEDULER_CONTEXT_PRIORITY_SMP_NAME( name ).Base.Base.Base, \ SCHEDULER_PRIORITY_SMP_ENTRY_POINTS, \ + RTEMS_ARRAY_SIZE( \ + RTEMS_SCHEDULER_CONTEXT_PRIORITY_SMP_NAME( name ).Ready \ + ) - 1, \ ( obj_name ) \ } #endif @@ -167,6 +178,9 @@ { \ &RTEMS_SCHEDULER_CONTEXT_STRONG_APA_NAME( name ).Base.Base.Base, \ SCHEDULER_STRONG_APA_ENTRY_POINTS, \ + RTEMS_ARRAY_SIZE( \ + RTEMS_SCHEDULER_CONTEXT_STRONG_APA_NAME( name ).Ready \ + ) - 1, \ ( obj_name ) \ } #endif @@ -185,6 +199,7 @@ { \ &RTEMS_SCHEDULER_CONTEXT_SIMPLE_NAME( name ).Base, \ SCHEDULER_SIMPLE_ENTRY_POINTS, \ + SCHEDULER_SIMPLE_MAXIMUM_PRIORITY, \ ( obj_name ) \ } #endif @@ -203,6 +218,7 @@ { \ &RTEMS_SCHEDULER_CONTEXT_SIMPLE_SMP_NAME( name ).Base.Base, \ SCHEDULER_SIMPLE_SMP_ENTRY_POINTS, \ + SCHEDULER_SIMPLE_SMP_MAXIMUM_PRIORITY, \ ( obj_name ) \ } #endif |