summaryrefslogtreecommitdiffstats
path: root/cpukit/sapi
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>2004-03-05 17:58:51 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>2004-03-05 17:58:51 +0000
commitb2b143f402b30c7bbe4ee98c58221b0cc78a1e9e (patch)
tree07d852d08ed4fe4c745ada0c7bbca69eaae85a58 /cpukit/sapi
parent2004-03-05 Joel Sherrill <joel@OARcorp.com> (diff)
downloadrtems-b2b143f402b30c7bbe4ee98c58221b0cc78a1e9e.tar.bz2
2004-03-05 Joel Sherrill <joel@OARcorp.com>
* libblock/src/bdbuf.c, libblock/src/ramdisk.c, libcsupport/src/newlibc.c, libcsupport/src/sync.c, libmisc/cpuuse/cpuuse.c, libmisc/monitor/mon-symbols.c, libmisc/shell/cmds.c, libmisc/shell/shell.c, libnetworking/kern/kern_sysctl.c, libnetworking/lib/ftpfs.c, libnetworking/lib/tftpDriver.c, libnetworking/libc/gethostbydns.c, libnetworking/libc/gethostbyht.c, libnetworking/libc/gethostnamadr.c, libnetworking/libc/getnetbyht.c, libnetworking/libc/getnetnamadr.c, libnetworking/libc/inet_addr.c, libnetworking/libc/linkaddr.c, libnetworking/libc/map_v4v6.c, libnetworking/libc/ns_print.c, libnetworking/libc/ns_ttl.c, libnetworking/libc/nsap_addr.c, libnetworking/libc/rcmd.c, libnetworking/libc/res_debug.c, libnetworking/libc/res_mkupdate.c, libnetworking/libc/res_query.c, libnetworking/libc/res_send.c, libnetworking/libc/res_update.c, libnetworking/net/radix.c, libnetworking/rtems/mkrootfs.c, librpc/src/rpc/clnt_perror.c, librpc/src/rpc/rtems_rpc.c, librpc/src/rpc/svc.c, sapi/include/confdefs.h, score/macros/rtems/score/chain.inl, score/src/objectidtoname.c:
Diffstat (limited to 'cpukit/sapi')
-rw-r--r--cpukit/sapi/include/confdefs.h31
1 files changed, 26 insertions, 5 deletions
diff --git a/cpukit/sapi/include/confdefs.h b/cpukit/sapi/include/confdefs.h
index 42dabaa8d9..6ddb2ea68a 100644
--- a/cpukit/sapi/include/confdefs.h
+++ b/cpukit/sapi/include/confdefs.h
@@ -44,6 +44,7 @@ extern "C" {
* Include the executive's configuration
*/
#include <rtems/score/cpuopts.h>
+#include <rtems/score/apimutex.h>
extern rtems_initialization_tasks_table Initialization_tasks[];
extern rtems_driver_address_table Device_drivers[];
@@ -472,6 +473,7 @@ rtems_extensions_table Configuration_Initial_Extensions[] = {
#include <sys/types.h>
#include <signal.h>
+#include <limits.h>
#include <mqueue.h>
#include <rtems/posix/cond.h>
#include <rtems/posix/mqueue.h>
@@ -562,7 +564,8 @@ posix_initialization_threads_table POSIX_Initialization_threads[] = {
#define CONFIGURE_MEMORY_FOR_POSIX_MUTEXES(_mutexes) \
((_mutexes) * \
- ( sizeof(POSIX_Mutex_Control) + CONFIGURE_OBJECT_TABLE_STUFF ) )
+ ( sizeof(POSIX_Mutex_Control) + CONFIGURE_OBJECT_TABLE_STUFF + \
+ NAME_MAX ) )
#define CONFIGURE_MEMORY_FOR_POSIX_CONDITION_VARIABLES(_condition_variables) \
((_condition_variables) * \
@@ -583,11 +586,14 @@ posix_initialization_threads_table POSIX_Initialization_threads[] = {
#define CONFIGURE_MEMORY_FOR_POSIX_MESSAGE_QUEUES(_message_queues) \
((_message_queues) * \
- ( sizeof( POSIX_Message_queue_Control) + CONFIGURE_OBJECT_TABLE_STUFF ) )
+ ( sizeof( POSIX_Message_queue_Control) + \
+ CONFIGURE_OBJECT_TABLE_STUFF + \
+ NAME_MAX ) )
#define CONFIGURE_MEMORY_FOR_POSIX_SEMAPHORES(_semaphores) \
((_semaphores) * \
- ( sizeof( POSIX_Semaphore_Control) + CONFIGURE_OBJECT_TABLE_STUFF ) )
-
+ ( sizeof( POSIX_Semaphore_Control) + \
+ CONFIGURE_OBJECT_TABLE_STUFF + \
+ NAME_MAX ) )
#define CONFIGURE_MEMORY_FOR_POSIX \
( \
@@ -805,12 +811,21 @@ itron_initialization_tasks_table ITRON_Initialization_tasks[] = {
#define CONFIGURE_OBJECT_TABLE_STUFF \
( sizeof(Objects_Control *) + sizeof(rtems_name *) + sizeof(rtems_name) )
+#if defined(RTEMS_NEWLIB)
+#include <reent.h>
+
+#define CONFIGURE_MEMORY_PER_TASK_FOR_LIBC_REENTRANCY sizeof(struct _reent)
+#else
+#define CONFIGURE_MEMORY_PER_TASK_FOR_LIBC_REENTRANCY 0
+#endif
+
#define CONFIGURE_MEMORY_FOR_TASKS(_tasks) \
(((_tasks) + 1 ) * \
((sizeof(Thread_Control) + CONTEXT_FP_SIZE + \
STACK_MINIMUM_SIZE + sizeof( RTEMS_API_Control ) + \
CONFIGURE_MEMORY_PER_TASK_FOR_POSIX_API + \
CONFIGURE_MEMORY_PER_TASK_FOR_ITRON_API + \
+ CONFIGURE_MEMORY_PER_TASK_FOR_LIBC_REENTRANCY + \
CONFIGURE_OBJECT_TABLE_STUFF)) \
)
@@ -880,11 +895,17 @@ itron_initialization_tasks_table ITRON_Initialization_tasks[] = {
#define CONFIGURE_EXTRA_TASK_STACKS 0
#endif
+#define CONFIGURE_API_MUTEX_MEMORY \
+ ( (1) * \
+ ( sizeof(API_Mutex_Control) + CONFIGURE_OBJECT_TABLE_STUFF ) \
+ )
+
#define CONFIGURE_MEMORY_FOR_SYSTEM_OVERHEAD \
( CONFIGURE_MEMORY_FOR_TASKS(1) + /* IDLE */ \
(256 * 12) + /* Ready chains */ \
256 + /* name/ptr table overhead */ \
- CONFIGURE_INTERRUPT_STACK_MEMORY /* interrupt stack */ \
+ CONFIGURE_INTERRUPT_STACK_MEMORY + /* interrupt stack */ \
+ CONFIGURE_API_MUTEX_MEMORY /* allocation mutex */ \
)
/*