[rtems-central commit] spec: CONFIGURE_INIT_TASK_CONSTRUCT_STORAGE_SIZE

Sebastian Huber sebh at rtems.org
Fri Nov 27 07:40:07 UTC 2020


Module:    rtems-central
Branch:    master
Commit:    4896f8a46442ebda0d4b19c4a05e25aee3902692
Changeset: http://git.rtems.org/rtems-central/commit/?id=4896f8a46442ebda0d4b19c4a05e25aee3902692

Author:    Sebastian Huber <sebastian.huber at embedded-brains.de>
Date:      Thu Nov 19 15:33:26 2020 +0100

spec: CONFIGURE_INIT_TASK_CONSTRUCT_STORAGE_SIZE

---

 spec/acfg/if/init-task-construct-storage-size.yml | 53 +++++++++++++++++++++++
 spec/acfg/if/init-task-stack-size.yml             |  9 +++-
 2 files changed, 61 insertions(+), 1 deletion(-)

diff --git a/spec/acfg/if/init-task-construct-storage-size.yml b/spec/acfg/if/init-task-construct-storage-size.yml
new file mode 100644
index 0000000..d01a094
--- /dev/null
+++ b/spec/acfg/if/init-task-construct-storage-size.yml
@@ -0,0 +1,53 @@
+SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
+appl-config-option-type: integer
+constraints:
+  min: ${min-task-stack-size:/name}
+  texts:
+  - |
+    The value of this configuration option shall be defined using
+    ${/rtems/task/if/storage-size:/name}.
+copyrights:
+- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de)
+default-value: |
+  This configuration option has no default value.  If it is not specified, then
+  the Classic API initialization task will be created with the stack size
+  defined by the ${init-task-stack-size:/name} configuration option.
+description: |
+  The value of this configuration option defines the task storage size of the
+  Classic API initialization task.
+enabled-by: true
+index-entries: []
+interface-type: appl-config-option
+links:
+- role: appl-config-group-member
+  uid: group-classicinit
+name: CONFIGURE_INIT_TASK_CONSTRUCT_STORAGE_SIZE
+notes: |
+  If this configuration option is specified, then
+
+  * a task storage area of the specified size is statically allocated by
+    ``<rtems/confdefs.h>`` for the Classic API initialization task,
+
+  * the Classic API initialization task is constructed by
+    ${/rtems/task/if/construct:/name} instead of using
+    ${/rtems/task/if/create:/name},
+
+  * the maximum thread-local storage size defined by
+    ${max-thread-local-storage-size:/name} is used for the Classic API
+    initialization task,
+
+  * the Classic API initialization task should be accounted for in
+    ${min-tasks-with-user-provided-storage:/name}, and
+
+  * the task storage area used for the Classic API initialization task is not
+    reclaimed by the system if the task is deleted.
+
+  The
+
+  * ${init-task-stack-size:/name} and
+
+  * ``CONFIGURE_INIT_TASK_CONSTRUCT_STORAGE_SIZE``
+
+  configuration options are mutually exclusive.
+text: ''
+type: interface
diff --git a/spec/acfg/if/init-task-stack-size.yml b/spec/acfg/if/init-task-stack-size.yml
index 8bccea6..ba0a827 100644
--- a/spec/acfg/if/init-task-stack-size.yml
+++ b/spec/acfg/if/init-task-stack-size.yml
@@ -17,6 +17,13 @@ links:
 - role: constraint
   uid: constraint-stackspace
 name: CONFIGURE_INIT_TASK_STACK_SIZE
-notes: null
+notes: |
+  The
+
+  * ``CONFIGURE_INIT_TASK_STACK_SIZE`` and
+
+  * ${init-task-construct-storage-size:/name}
+
+  configuration options are mutually exclusive.
 text: ''
 type: interface



More information about the vc mailing list