[PATCH v4 0/5] rtems: Add rtems_task_create_from_config()
Sebastian Huber
sebastian.huber at embedded-brains.de
Fri Sep 11 15:34:31 UTC 2020
v2:
Rename function from rtems_task_build() to
rtems_task_create_from_config(). Add RTEMS_TASK_STORAGE_ALIGNMENT and
RTEMS_TASK_STORAGE_SIZE(). Improve documentation.
v3:
Add CONFIGURE_TASKS_CREATED_FROM_CONFIG. Fix RTEMS_TASK_STORAGE_SIZE() if
CPU_ALL_TASKS_ARE_FP == TRUE.
v4:
Add CONFIGURE_MAXIMUM_THREAD_LOCAL_STORAGE_SIZE to control the maximum size
reserved for thread-local storage.
Add maximum_thread_local_storage_size member to rtems_task_config to check that
the thread-local storage size in the task configuration is sufficient for the
actual thread-local storage size of the application.
Add a general purpose test suite for basic validation tests. Add a validation
test case to check the rtems_task_create_from_config() error cases. The code
is generated from specification items:
https://git.rtems.org/rtems-central/tree/spec/testsuites/validation-0.yml
https://git.rtems.org/rtems-central/tree/spec/req/rtems/tasks/create-from-config-errors.yml
The build system part of the new tests is not included in the patch set. I
don't want to add a new test suite for the old build system.
Sebastian Huber (5):
CONFIGURE_MAXIMUM_THREAD_LOCAL_STORAGE_SIZE
rtems: Add rtems_task_create_from_config()
doxygen: Move top-level group definitions
validation: Add general purpose test suite
validation: rtems_task_create_from_config() errors
Doxyfile | 2 +-
cpukit/Makefile.am | 1 +
cpukit/doxygen.h | 18 -
cpukit/doxygen/appl-config.h | 52 +
cpukit/doxygen/top-level-groups.h | 50 +
cpukit/include/rtems/confdefs/threads.h | 15 +
cpukit/include/rtems/confdefs/wkspace.h | 4 +-
cpukit/include/rtems/rtems/tasks.h | 163 ++
cpukit/include/rtems/rtems/tasksimpl.h | 11 +
cpukit/include/rtems/score/interr.h | 3 +-
cpukit/include/rtems/score/thread.h | 10 +
cpukit/rtems/src/taskcreate.c | 282 +-
cpukit/rtems/src/taskcreatefromconfig.c | 300 +++
cpukit/sapi/src/interrtext.c | 5 +-
cpukit/score/src/tlsallocsize.c | 16 +-
testsuites/sptests/Makefile.am | 9 +
testsuites/sptests/configure.ac | 1 +
testsuites/sptests/sp01/init.c | 24 +-
testsuites/sptests/sp01/sp01.doc | 1 +
testsuites/sptests/sp01/system.h | 3 +-
testsuites/sptests/spfatal33/init.c | 55 +
testsuites/sptests/spfatal33/spfatal33.doc | 11 +
testsuites/sptests/spfatal33/spfatal33.scn | 16 +
testsuites/sptests/spinternalerror02/init.c | 4 +-
.../tc-tasks-create-from-config-errors.c | 2369 +++++++++++++++++
testsuites/validation/ts-validation-0.c | 217 ++
26 files changed, 3379 insertions(+), 263 deletions(-)
create mode 100644 cpukit/doxygen/top-level-groups.h
create mode 100644 cpukit/rtems/src/taskcreatefromconfig.c
create mode 100644 testsuites/sptests/spfatal33/init.c
create mode 100644 testsuites/sptests/spfatal33/spfatal33.doc
create mode 100644 testsuites/sptests/spfatal33/spfatal33.scn
create mode 100644 testsuites/validation/tc-tasks-create-from-config-errors.c
create mode 100644 testsuites/validation/ts-validation-0.c
--
2.26.2
More information about the devel
mailing list