diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2022-03-10 14:49:19 +0100 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2022-03-16 07:40:09 +0100 |
commit | b722d660e6053db94d14d7c240086c8b6d64b601 (patch) | |
tree | 561d9902fc1008c786c2c964f10c98e1b07fd93c /spec/score/smp/val/fatal-start-on-not-online-processor.yml | |
parent | spec: Improve interrupt set affinity handling (diff) | |
download | rtems-central-b722d660e6053db94d14d7c240086c8b6d64b601.tar.bz2 |
spec: Specify SMP multitasking start error
Diffstat (limited to 'spec/score/smp/val/fatal-start-on-not-online-processor.yml')
-rw-r--r-- | spec/score/smp/val/fatal-start-on-not-online-processor.yml | 74 |
1 files changed, 74 insertions, 0 deletions
diff --git a/spec/score/smp/val/fatal-start-on-not-online-processor.yml b/spec/score/smp/val/fatal-start-on-not-online-processor.yml new file mode 100644 index 00000000..93947064 --- /dev/null +++ b/spec/score/smp/val/fatal-start-on-not-online-processor.yml @@ -0,0 +1,74 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +copyrights: +- Copyright (C) 2022 embedded brains GmbH (http://www.embedded-brains.de) +enabled-by: RTEMS_SMP +links: [] +test-actions: +- action-brief: | + The test action is carried out by the wrapped _CPU_SMP_Start_processor(). + action-code: | + /* Nothing to do */ + checks: + - brief: | + Check that the expected fatal source is present. + code: | + T_step_eq_int( ${step}, ctx->source, RTEMS_FATAL_SOURCE_SMP ); + links: + - role: validation + uid: ../req/fatal-start-on-not-online-processor + - brief: | + Check that the expected fatal code is present. + code: | + T_step_eq_ulong( + ${step}, + ctx->code, + SMP_FATAL_MULTITASKING_START_ON_NOT_ONLINE_PROCESSOR + ); + links: + - role: validation + uid: ../req/fatal-start-on-not-online-processor + links: + - role: validation + uid: /acfg/req/scheduler-assign-processor-mandatory +test-brief: | + Tests a fatal error. +test-context: [] +test-context-support: null +test-description: null +test-header: + code: null + freestanding: true + includes: + - rtems.h + local-includes: [] + run-params: + - description: | + is fatal source. + dir: null + name: source + specifier: ${/rtems/userext/if/fatal-source:/name} ${.:name} + - description: | + is fatal code. + dir: null + name: code + specifier: ${/rtems/userext/if/fatal-code:/name} ${.:name} + target: testsuites/validation/tr-fatal-start-on-not-online-processor.h +test-includes: +- rtems/score/smpimpl.h +test-local-includes: +- tr-fatal-start-on-not-online-processor.h +test-setup: null +test-stop: null +test-support: | + bool __real__CPU_SMP_Start_processor( uint32_t cpu_index ); + + bool __wrap__CPU_SMP_Start_processor( uint32_t cpu_index ); + + bool __wrap__CPU_SMP_Start_processor( uint32_t cpu_index ) + { + (void) __real__CPU_SMP_Start_processor( cpu_index ); + return false; + } +test-target: testsuites/validation/tr-fatal-start-on-not-online-processor.c +test-teardown: null +type: test-case |