diff --git a/cpukit/rtems/src/schedulergetprocessorset.c b/cpukit/rtems/src/schedulergetprocessorset.c index e459b178cc..016c3681cf 100644 --- a/cpukit/rtems/src/schedulergetprocessorset.c +++ b/cpukit/rtems/src/schedulergetprocessorset.c @@ -28,27 +28,23 @@ rtems_status_code rtems_scheduler_get_processor_set( cpu_set_t *cpuset ) { - rtems_status_code sc; + const Scheduler_Control *scheduler; - if ( cpuset != NULL ) { - const Scheduler_Control *scheduler; - - if ( _Scheduler_Get_by_id( scheduler_id, &scheduler ) ) { - if ( _CPU_set_Is_large_enough( cpusetsize ) ) { - _Scheduler_Get_processor_set( scheduler, cpusetsize, cpuset ); - - sc = RTEMS_SUCCESSFUL; - } else { - sc = RTEMS_INVALID_NUMBER; - } - } else { - sc = RTEMS_INVALID_ID; - } - } else { - sc = RTEMS_INVALID_ADDRESS; + if ( cpuset == NULL ) { + return RTEMS_INVALID_ADDRESS; } - return sc; + if ( !_Scheduler_Get_by_id( scheduler_id, &scheduler ) ) { + return RTEMS_INVALID_ID; + } + + if ( !_CPU_set_Is_large_enough( cpusetsize ) ) { + return RTEMS_INVALID_NUMBER; + } + + _Scheduler_Get_processor_set( scheduler, cpusetsize, cpuset ); + + return RTEMS_SUCCESSFUL; } #endif /* defined(__RTEMS_HAVE_SYS_CPUSET_H__) */