On 12/9/20 1:34 am, Sebastian Huber wrote: > + * @par Notes > + * By default, the calculation for the required memory in the RTEMS Workspace > + * for tasks assumes that all Classic API Tasks are created by > + * rtems_task_create(). This configuration option can be used to reduce the > + * required memory for the system-provided task storage areas since tasks > + * created by rtems_task_create_from_config() use a user-provided task > storage > + * area. > + */ > +#define CONFIGURE_TASKS_CREATED_FROM_CONFIG
The documentation does not deal with 0 the default. It is fair to assume a config that controls allocations for an API is consistent with similar calls. It I set message queues to 0 any create call fails. I needed to check the patch to know if 0 meant you could not create any tasks from a config. If CONFIGURE_TASKS_CREATED_FROM_CONFIG was added to the configuration table (which I am ok with) the rtems_task_create_from_config() could check for a non-zero value before proceeding. > +#ifndef CONFIGURE_TASKS_CREATED_FROM_CONFIG > + #define CONFIGURE_TASKS_CREATED_FROM_CONFIG 0 > +#endif > + > +#if CONFIGURE_TASKS_CREATED_FROM_CONFIG > CONFIGURE_MAXIMUM_TASKS > + #error "CONFIGURE_TASKS_CREATED_FROM_CONFIG shall be less than or equal to > CONFIGURE_MAXIMUM_TASKS" > +#endif > + > #ifndef CONFIGURE_MAXIMUM_POSIX_THREADS > #define CONFIGURE_MAXIMUM_POSIX_THREADS 0 > #endif > diff --git a/cpukit/include/rtems/confdefs/wkspace.h > b/cpukit/include/rtems/confdefs/wkspace.h > index de476dbf82..215cdcb141 100644 > --- a/cpukit/include/rtems/confdefs/wkspace.h > +++ b/cpukit/include/rtems/confdefs/wkspace.h > @@ -100,7 +100,9 @@ > + _CONFIGURE_POSIX_INIT_THREAD_STACK_EXTRA \ > + _CONFIGURE_LIBBLOCK_TASKS_STACK_EXTRA \ > + CONFIGURE_EXTRA_TASK_STACKS \ > - + rtems_resource_maximum_per_allocation( _CONFIGURE_TASKS ) \ > + + rtems_resource_maximum_per_allocation( \ > + _CONFIGURE_TASKS - CONFIGURE_TASKS_CREATED_FROM_CONFIG \ I am confused by this. Does _CONFIGURE_TASKS have the number of tasks created from config included in it? How was that added in? I would have assumed I set CONFIGURE_TASKS_CREATED_FROM_CONFIG and that would be added _CONFIGURE_TASKS internally. Sorry, I think I am not understanding something. Chris _______________________________________________ devel mailing list devel@rtems.org http://lists.rtems.org/mailman/listinfo/devel