diff options
Diffstat (limited to 'cpukit/rtems/src/schedulerident.c')
-rw-r--r-- | cpukit/rtems/src/schedulerident.c | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/cpukit/rtems/src/schedulerident.c b/cpukit/rtems/src/schedulerident.c index d9e913c946..ee18af009e 100644 --- a/cpukit/rtems/src/schedulerident.c +++ b/cpukit/rtems/src/schedulerident.c @@ -33,9 +33,15 @@ rtems_status_code rtems_scheduler_ident( sc = RTEMS_INVALID_NAME; for ( i = 0 ; i < n && sc == RTEMS_INVALID_NAME ; ++i ) { - if ( _Scheduler_Table[ i ].name == name ) { - *id = _Scheduler_Build_id( i ); - sc = RTEMS_SUCCESSFUL; + const Scheduler_Control *scheduler = &_Scheduler_Table[ i ]; + + if ( scheduler->name == name ) { + if ( _Scheduler_Get_processor_count( scheduler ) > 0 ) { + *id = _Scheduler_Build_id( i ); + sc = RTEMS_SUCCESSFUL; + } else { + sc = RTEMS_UNSATISFIED; + } } } } else { |