[PATCH 0/7] Implement rtems_task_build()

Sebastian Huber sebastian.huber at embedded-brains.de
Fri Aug 21 11:50:56 UTC 2020


In contrast to rtems_task_create() the rtems_task_build() function creates a
task with a user-provided task storage area.

Sebastian Huber (7):
  score: Add _Freechain_Push()
  score: Add <rtems/score/freechainimpl.h>
  score: Use _Freechain_Push()
  score: Add _Stack_Allocator_do_initialize()
  score: Move _Stack_Allocator_free to separate file
  score: Add stack free handler to TCB
  rtems: Add rtems_task_build()

 cpukit/Makefile.am                           |   4 +
 cpukit/headers.am                            |   1 +
 cpukit/include/rtems/confdefs/wkspace.h      |   6 +
 cpukit/include/rtems/posix/keyimpl.h         |   2 +-
 cpukit/include/rtems/rtems/tasks.h           |  65 +++++
 cpukit/include/rtems/rtems/tasksimpl.h       |  11 +
 cpukit/include/rtems/score/freechain.h       | 109 +-------
 cpukit/include/rtems/score/freechainimpl.h   | 161 +++++++++++
 cpukit/include/rtems/score/stack.h           |   7 +
 cpukit/include/rtems/score/stackimpl.h       |   7 +
 cpukit/include/rtems/score/thread.h          |   5 +-
 cpukit/include/rtems/score/threadimpl.h      |   6 +-
 cpukit/include/rtems/sysinit.h               |   1 +
 cpukit/posix/src/pthreadcreate.c             |   4 +-
 cpukit/rtems/src/taskbuild.c                 | 273 ++++++++++++++++++
 cpukit/rtems/src/taskcreate.c                | 274 ++++---------------
 cpukit/score/src/freechain.c                 |   5 +-
 cpukit/score/src/stackallocator.c            |   4 -
 cpukit/score/src/stackallocatorfree.c        |  35 +++
 cpukit/score/src/stackallocatorfreenothing.c |  45 +++
 cpukit/score/src/stackallocatorinit.c        |  60 ++++
 cpukit/score/src/thread.c                    |  23 +-
 cpukit/score/src/threadallocateunlimited.c   |   1 +
 cpukit/score/src/threadinitialize.c          |  33 ++-
 cpukit/score/src/threadrestart.c             |   5 +-
 testsuites/sptests/sp01/init.c               |  22 +-
 testsuites/sptests/sp01/sp01.doc             |   1 +
 testsuites/sptests/sp01/system.h             |   2 +-
 testsuites/sptests/spfreechain01/init.c      |   2 +-
 29 files changed, 777 insertions(+), 397 deletions(-)
 create mode 100644 cpukit/include/rtems/score/freechainimpl.h
 create mode 100644 cpukit/rtems/src/taskbuild.c
 create mode 100644 cpukit/score/src/stackallocatorfree.c
 create mode 100644 cpukit/score/src/stackallocatorfreenothing.c
 create mode 100644 cpukit/score/src/stackallocatorinit.c

-- 
2.26.2



More information about the devel mailing list