diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2016-10-31 13:08:33 +0100 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2016-11-10 09:22:09 +0100 |
commit | 05ca53ddf6bc8333c2f3ad861c5415467c3262d2 (patch) | |
tree | 9b011af47a8304527c77ba8992418e473f540ecf /testsuites/sptests/spscheduler01/init.c | |
parent | score: Add and use Thread_Control::is_idle (diff) | |
download | rtems-05ca53ddf6bc8333c2f3ad861c5415467c3262d2.tar.bz2 |
rtems: Add scheduler processor add/remove
Update #2797.
Diffstat (limited to 'testsuites/sptests/spscheduler01/init.c')
-rw-r--r-- | testsuites/sptests/spscheduler01/init.c | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/testsuites/sptests/spscheduler01/init.c b/testsuites/sptests/spscheduler01/init.c index 162d71ae3f..be9fed2c7f 100644 --- a/testsuites/sptests/spscheduler01/init.c +++ b/testsuites/sptests/spscheduler01/init.c @@ -411,6 +411,33 @@ static void test_scheduler_get_processors(void) #endif /* defined(__RTEMS_HAVE_SYS_CPUSET_H__) */ } +static void test_scheduler_add_remove_processors(void) +{ + rtems_status_code sc; + rtems_id scheduler_id; + + sc = rtems_scheduler_ident(BLUE, &scheduler_id); + rtems_test_assert(sc == RTEMS_SUCCESSFUL); + + sc = rtems_scheduler_add_processor(invalid_id, 0); + rtems_test_assert(sc == RTEMS_INVALID_ID); + + sc = rtems_scheduler_remove_processor(invalid_id, 0); + rtems_test_assert(sc == RTEMS_INVALID_ID); + + sc = rtems_scheduler_add_processor(scheduler_id, 1); + rtems_test_assert(sc == RTEMS_NOT_CONFIGURED); + + sc = rtems_scheduler_remove_processor(scheduler_id, 1); + rtems_test_assert(sc == RTEMS_INVALID_NUMBER); + + sc = rtems_scheduler_add_processor(scheduler_id, 0); + rtems_test_assert(sc == RTEMS_RESOURCE_IN_USE); + + sc = rtems_scheduler_remove_processor(scheduler_id, 0); + rtems_test_assert(sc == RTEMS_RESOURCE_IN_USE); +} + static void test_task_get_priority(void) { rtems_status_code sc; @@ -463,6 +490,7 @@ static void Init(rtems_task_argument arg) test_task_get_set_scheduler(); test_scheduler_ident(); test_scheduler_get_processors(); + test_scheduler_add_remove_processors(); test_task_get_priority(); rtems_test_assert(rtems_resource_snapshot_check(&snapshot)); |