forked from Imagelibrary/rtems
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:
This commit is contained in:
@@ -1,3 +1,24 @@
|
||||
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:
|
||||
|
||||
2004-02-26 Thomas Rauscher <trauscher@loytec.com.
|
||||
|
||||
PR 584/RTEMS
|
||||
|
||||
@@ -228,7 +228,8 @@ avl_insert(bdbuf_buffer **root, bdbuf_buffer *node)
|
||||
blkdev_bnum block = node->block;
|
||||
|
||||
bdbuf_buffer *p = *root;
|
||||
bdbuf_buffer *q, *p1, *p2;
|
||||
bdbuf_buffer *q = NULL;
|
||||
bdbuf_buffer *p1, *p2;
|
||||
bdbuf_buffer *buf_stack[AVL_MAX_HEIGHT];
|
||||
bdbuf_buffer **buf_prev = buf_stack;
|
||||
|
||||
|
||||
@@ -12,6 +12,12 @@
|
||||
|
||||
#include <rtems.h>
|
||||
#include <rtems/libio.h>
|
||||
|
||||
/* Since we compile with strict ANSI we need to undef it to get
|
||||
* prototypes for extensions
|
||||
*/
|
||||
#undef __STRICT_ANSI__
|
||||
|
||||
#include <errno.h>
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
|
||||
@@ -22,6 +22,12 @@
|
||||
|
||||
#if defined(RTEMS_NEWLIB)
|
||||
#include <rtems/libcsupport.h>
|
||||
|
||||
/* Since we compile with strict ANSI we need to undef it to get
|
||||
* prototypes for extensions
|
||||
*/
|
||||
#undef __STRICT_ANSI__
|
||||
|
||||
#include <stdlib.h> /* for free() */
|
||||
#include <string.h> /* for memset() */
|
||||
|
||||
@@ -126,25 +132,25 @@ rtems_boolean libc_create_hook(
|
||||
{
|
||||
|
||||
#ifdef __GNUC__
|
||||
/* GCC extension: structure constants */
|
||||
_REENT_INIT_PTR((ptr));
|
||||
/* GCC extension: structure constants */
|
||||
_REENT_INIT_PTR((ptr));
|
||||
#else
|
||||
/*
|
||||
* WARNING: THIS IS VERY DEPENDENT ON NEWLIB!!!
|
||||
* Last visual check was against newlib 1.8.2 but last known
|
||||
* use was against 1.7.0. This is basically an exansion of
|
||||
* REENT_INIT() in <sys/reent.h>.
|
||||
*/
|
||||
memset(ptr, 0, sizeof(*ptr));
|
||||
ptr->_stdin = &ptr->__sf[0];
|
||||
ptr->_stdout = &ptr->__sf[1];
|
||||
ptr->_stderr = &ptr->__sf[2];
|
||||
ptr->_current_locale = "C";
|
||||
ptr->_new._reent._rand_next = 1;
|
||||
/*
|
||||
* WARNING: THIS IS VERY DEPENDENT ON NEWLIB!!!
|
||||
* Last visual check was against newlib 1.8.2 but last known
|
||||
* use was against 1.7.0. This is basically an exansion of
|
||||
* REENT_INIT() in <sys/reent.h>.
|
||||
*/
|
||||
memset(ptr, 0, sizeof(*ptr));
|
||||
ptr->_stdin = &ptr->__sf[0];
|
||||
ptr->_stdout = &ptr->__sf[1];
|
||||
ptr->_stderr = &ptr->__sf[2];
|
||||
ptr->_current_locale = "C";
|
||||
ptr->_new._reent._rand_next = 1;
|
||||
#endif
|
||||
|
||||
creating_task->libc_reent = ptr;
|
||||
return TRUE;
|
||||
creating_task->libc_reent = ptr;
|
||||
return TRUE;
|
||||
}
|
||||
else
|
||||
return FALSE;
|
||||
@@ -235,7 +241,6 @@ rtems_extension libc_delete_hook(
|
||||
ptr = deleted_task->libc_reent;
|
||||
}
|
||||
|
||||
/* if (ptr) */
|
||||
if (ptr && ptr != &libc_global_reent) {
|
||||
/*
|
||||
_wrapup_reent(ptr);
|
||||
@@ -248,7 +253,7 @@ rtems_extension libc_delete_hook(
|
||||
#if REENT_MALLOCED
|
||||
free(ptr);
|
||||
#else
|
||||
_Workspace_Free(ptr);
|
||||
_Workspace_Free(ptr);
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
@@ -21,6 +21,13 @@
|
||||
#include "config.h"
|
||||
#endif
|
||||
|
||||
/* Since we compile with strict ANSI we need to undef it to get
|
||||
* prototypes for extensions
|
||||
*/
|
||||
#undef __STRICT_ANSI__
|
||||
int fdatasync(int); /* still not always prototyped */
|
||||
|
||||
|
||||
#include <unistd.h>
|
||||
#include <stdio.h>
|
||||
|
||||
@@ -35,6 +42,7 @@
|
||||
/* XXX check standards -- Linux version appears to be void */
|
||||
void _fwalk(struct _reent *, void *);
|
||||
|
||||
|
||||
static void sync_wrapper(FILE *f)
|
||||
{
|
||||
int fn = fileno(f);
|
||||
@@ -60,6 +68,22 @@ static void sync_per_thread(Thread_Control *t)
|
||||
|
||||
int sync(void)
|
||||
{
|
||||
extern struct _reent libc_global_reent;
|
||||
|
||||
/*
|
||||
* Walk the one used initially by RTEMS.
|
||||
*/
|
||||
_fwalk(&libc_global_reent, sync_wrapper);
|
||||
|
||||
/*
|
||||
* XXX Do we walk the one used globally by newlib?
|
||||
* XXX Do we need the RTEMS global one?
|
||||
*/
|
||||
|
||||
/*
|
||||
* Now walk all the per-thread reentrancy structures.
|
||||
*/
|
||||
rtems_iterate_over_all_threads(sync_per_thread);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -101,7 +101,8 @@ void CPU_usage_Dump( void )
|
||||
if ( !isprint(name[2]) ) name[2] = '*';
|
||||
if ( !isprint(name[3]) ) name[3] = '*';
|
||||
|
||||
#if defined(unix) || ( CPU_HARDWARE_FP == TRUE )
|
||||
#if defined(unix) || \
|
||||
( (CPU_HARDWARE_FP == TRUE) && !defined(__mips_single_float) )
|
||||
printf( "0x%08x %4s %8d %5.3f\n",
|
||||
the_thread->Object.id,
|
||||
name,
|
||||
|
||||
@@ -15,13 +15,17 @@
|
||||
#include "config.h"
|
||||
#endif
|
||||
|
||||
#include <string.h>
|
||||
/* Since we compile with strict ANSI we need to undef it to get
|
||||
* prototypes for extensions
|
||||
*/
|
||||
#undef __STRICT_ANSI__
|
||||
|
||||
#define __RTEMS_VIOLATE_KERNEL_VISIBILITY__
|
||||
#include <rtems.h>
|
||||
#include <string.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#define __RTEMS_VIOLATE_KERNEL_VISIBILITY__
|
||||
#include <rtems.h>
|
||||
#include <rtems/monitor.h>
|
||||
#include "symbols.h"
|
||||
|
||||
|
||||
@@ -27,6 +27,11 @@
|
||||
#include "config.h"
|
||||
#endif
|
||||
|
||||
/* Since we compile with strict ANSI we need to undef it to get
|
||||
* prototypes for extensions
|
||||
*/
|
||||
#undef __STRICT_ANSI__
|
||||
|
||||
#include <stdio.h>
|
||||
#include <termios.h>
|
||||
#include <string.h>
|
||||
@@ -447,7 +452,7 @@ int main_umask(int argc,char *argv[])
|
||||
if (argc == 2) msk=str2int(argv[1]);
|
||||
umask(msk);
|
||||
msk=umask(0);
|
||||
printf("0%o\n",msk);
|
||||
printf("0%o\n", (unsigned int) msk);
|
||||
umask(msk);
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -16,6 +16,11 @@
|
||||
#include "config.h"
|
||||
#endif
|
||||
|
||||
/* Since we compile with strict ANSI we need to undef it to get
|
||||
* prototypes for extensions
|
||||
*/
|
||||
#undef __STRICT_ANSI__
|
||||
|
||||
#include <stdio.h>
|
||||
#include <time.h>
|
||||
|
||||
|
||||
@@ -60,6 +60,11 @@
|
||||
#else
|
||||
#include <sys/buf.h>
|
||||
|
||||
/* Since we compile with strict ANSI we need to undef it to get
|
||||
* prototypes for extensions
|
||||
*/
|
||||
#undef __STRICT_ANSI__
|
||||
|
||||
#include <stdio.h> /* for snprintf() */
|
||||
size_t strlcpy(char *, const char *, size_t);
|
||||
#endif
|
||||
|
||||
@@ -636,8 +636,8 @@ int rtems_ftp_open(
|
||||
|
||||
hent = gethostbyname(hostname);
|
||||
if (hent != NULL) {
|
||||
bcopy(hent->h_addr,
|
||||
(char *)(&(fsp->farCtrlAddress.sin_addr)),
|
||||
memcpy((char *)(&(fsp->farCtrlAddress.sin_addr)),
|
||||
hent->h_addr,
|
||||
sizeof(fsp->farCtrlAddress.sin_addr));
|
||||
}
|
||||
else {
|
||||
|
||||
@@ -15,6 +15,11 @@
|
||||
*
|
||||
*/
|
||||
|
||||
/* Since we compile with strict ANSI we need to undef it to get
|
||||
* prototypes for extensions
|
||||
*/
|
||||
#undef __STRICT_ANSI__
|
||||
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <errno.h>
|
||||
|
||||
@@ -66,6 +66,11 @@ static char rcsid[] = "$Id$";
|
||||
#include <arpa/inet.h>
|
||||
#include <arpa/nameser.h>
|
||||
|
||||
/* Since we compile with strict ANSI we need to undef it to get
|
||||
* prototypes for extensions
|
||||
*/
|
||||
#undef __STRICT_ANSI__
|
||||
|
||||
#include <stdio.h>
|
||||
#include <unistd.h>
|
||||
#include <string.h>
|
||||
|
||||
@@ -56,6 +56,11 @@ static char sccsid[] = "@(#)gethostnamadr.c 8.1 (Berkeley) 6/4/93";
|
||||
static char rcsid[] = "$Id$";
|
||||
#endif /* LIBC_SCCS and not lint */
|
||||
|
||||
/* Since we compile with strict ANSI we need to undef it to get
|
||||
* prototypes for extensions
|
||||
*/
|
||||
#undef __STRICT_ANSI__
|
||||
|
||||
#include <sys/param.h>
|
||||
#include <sys/socket.h>
|
||||
#include <netinet/in.h>
|
||||
|
||||
@@ -28,6 +28,11 @@ static char sccsid[] = "@(#)$Id$";
|
||||
static char rcsid[] = "$Id$";
|
||||
#endif /* LIBC_SCCS and not lint */
|
||||
|
||||
/* Since we compile with strict ANSI we need to undef it to get
|
||||
* prototypes for extensions
|
||||
*/
|
||||
#undef __STRICT_ANSI__
|
||||
|
||||
#include <sys/param.h>
|
||||
#include <sys/socket.h>
|
||||
#include <netinet/in.h>
|
||||
|
||||
@@ -47,6 +47,11 @@ static char orig_rcsid[] = "From: Id: getnetent.c,v 8.4 1997/06/01 20:34:37 vixi
|
||||
static chat rcsid[] = "$Id$";
|
||||
#endif /* LIBC_SCCS and not lint */
|
||||
|
||||
/* Since we compile with strict ANSI we need to undef it to get
|
||||
* prototypes for extensions
|
||||
*/
|
||||
#undef __STRICT_ANSI__
|
||||
|
||||
#include <sys/types.h>
|
||||
#include <sys/socket.h>
|
||||
#include <netinet/in.h>
|
||||
|
||||
@@ -27,6 +27,11 @@
|
||||
static char rcsid[] = "$Id$";
|
||||
#endif /* LIBC_SCCS and not lint */
|
||||
|
||||
/* Since we compile with strict ANSI we need to undef it to get
|
||||
* prototypes for extensions
|
||||
*/
|
||||
#undef __STRICT_ANSI__
|
||||
|
||||
#include <sys/param.h>
|
||||
#include <sys/socket.h>
|
||||
#include <netinet/in.h>
|
||||
|
||||
@@ -58,6 +58,11 @@ static char sccsid[] = "@(#)inet_addr.c 8.1 (Berkeley) 6/17/93";
|
||||
static char rcsid[] = "$Id$";
|
||||
#endif /* LIBC_SCCS and not lint */
|
||||
|
||||
/* Since we compile with strict ANSI we need to undef it to get
|
||||
* prototypes for extensions
|
||||
*/
|
||||
#undef __STRICT_ANSI__
|
||||
|
||||
#include <sys/param.h>
|
||||
#include <netinet/in.h>
|
||||
#include <arpa/inet.h>
|
||||
|
||||
@@ -37,6 +37,11 @@
|
||||
static char sccsid[] = "@(#)linkaddr.c 8.1 (Berkeley) 6/4/93";
|
||||
#endif /* LIBC_SCCS and not lint */
|
||||
|
||||
/* Since we compile with strict ANSI we need to undef it to get
|
||||
* prototypes for extensions
|
||||
*/
|
||||
#undef __STRICT_ANSI__
|
||||
|
||||
#include <sys/types.h>
|
||||
#include <sys/socket.h>
|
||||
#include <net/if_dl.h>
|
||||
|
||||
@@ -65,6 +65,11 @@ static char rcsid[] = "$Id$";
|
||||
#include <arpa/inet.h>
|
||||
#include <arpa/nameser.h>
|
||||
|
||||
/* Since we compile with strict ANSI we need to undef it to get
|
||||
* prototypes for extensions
|
||||
*/
|
||||
#undef __STRICT_ANSI__
|
||||
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <netdb.h>
|
||||
|
||||
@@ -30,6 +30,11 @@ static char rcsid[] = "$Id$";
|
||||
#include <arpa/nameser.h>
|
||||
#include <arpa/inet.h>
|
||||
|
||||
/* Since we compile with strict ANSI we need to undef it to get
|
||||
* prototypes for extensions
|
||||
*/
|
||||
#undef __STRICT_ANSI__
|
||||
|
||||
#include <assert.h>
|
||||
#include <errno.h>
|
||||
#include <resolv.h>
|
||||
|
||||
@@ -25,6 +25,11 @@ static char rcsid[] = "$Id$";
|
||||
|
||||
#include <arpa/nameser.h>
|
||||
|
||||
/* Since we compile with strict ANSI we need to undef it to get
|
||||
* prototypes for extensions
|
||||
*/
|
||||
#undef __STRICT_ANSI__
|
||||
|
||||
#include <ctype.h>
|
||||
#include <errno.h>
|
||||
#include <stdio.h>
|
||||
|
||||
@@ -19,6 +19,11 @@
|
||||
static char rcsid[] = "$Id$";
|
||||
#endif /* LIBC_SCCS and not lint */
|
||||
|
||||
/* Since we compile with strict ANSI we need to undef it to get
|
||||
* prototypes for extensions
|
||||
*/
|
||||
#undef __STRICT_ANSI__
|
||||
|
||||
#include <sys/types.h>
|
||||
#include <sys/param.h>
|
||||
#include <sys/socket.h>
|
||||
|
||||
@@ -44,6 +44,11 @@ static char sccsid[] = "@(#)rcmd.c 8.3 (Berkeley) 3/26/94";
|
||||
#include <netinet/in.h>
|
||||
#include <arpa/inet.h>
|
||||
|
||||
/* Since we compile with strict ANSI we need to undef it to get
|
||||
* prototypes for extensions
|
||||
*/
|
||||
#undef __STRICT_ANSI__
|
||||
|
||||
#include <signal.h>
|
||||
#include <fcntl.h>
|
||||
#include <netdb.h>
|
||||
|
||||
@@ -98,6 +98,11 @@ static char sccsid[] = "@(#)res_debug.c 8.1 (Berkeley) 6/4/93";
|
||||
static char rcsid[] = "$Id$";
|
||||
#endif /* LIBC_SCCS and not lint */
|
||||
|
||||
/* Since we compile with strict ANSI we need to undef it to get
|
||||
* prototypes for extensions
|
||||
*/
|
||||
#undef __STRICT_ANSI__
|
||||
|
||||
#include <sys/types.h>
|
||||
#include <sys/param.h>
|
||||
#include <sys/socket.h>
|
||||
|
||||
@@ -26,6 +26,11 @@ static char rcsid[] = "$Id$";
|
||||
#endif /* not lint */
|
||||
#endif /* not rtems */
|
||||
|
||||
/* Since we compile with strict ANSI we need to undef it to get
|
||||
* prototypes for extensions
|
||||
*/
|
||||
#undef __STRICT_ANSI__
|
||||
|
||||
#include <sys/types.h>
|
||||
#include <sys/param.h>
|
||||
|
||||
|
||||
@@ -74,6 +74,11 @@ static char orig_rcsid = "From: Id: res_query.c,v 8.14 1997/06/09 17:47:05 halle
|
||||
static char rcsid[] = "$Id$";
|
||||
#endif /* LIBC_SCCS and not lint */
|
||||
|
||||
/* Since we compile with strict ANSI we need to undef it to get
|
||||
* prototypes for extensions
|
||||
*/
|
||||
#undef __STRICT_ANSI__
|
||||
|
||||
#include <sys/types.h>
|
||||
#include <sys/param.h>
|
||||
#include <netinet/in.h>
|
||||
|
||||
@@ -78,6 +78,11 @@ static char rcsid[] = "$Id$";
|
||||
* Send query to name server and wait for reply.
|
||||
*/
|
||||
|
||||
/* Since we compile with strict ANSI we need to undef it to get
|
||||
* prototypes for extensions
|
||||
*/
|
||||
#undef __STRICT_ANSI__
|
||||
|
||||
#include <sys/types.h>
|
||||
#include <sys/param.h>
|
||||
#include <sys/time.h>
|
||||
|
||||
@@ -26,6 +26,11 @@ static char rcsid[] = "$Id$";
|
||||
* <viraj_bais@ccm.fm.intel.com>
|
||||
*/
|
||||
|
||||
/* Since we compile with strict ANSI we need to undef it to get
|
||||
* prototypes for extensions
|
||||
*/
|
||||
#undef __STRICT_ANSI__
|
||||
|
||||
#include <sys/param.h>
|
||||
#include <sys/socket.h>
|
||||
#include <sys/time.h>
|
||||
|
||||
@@ -1026,6 +1026,6 @@ rn_init()
|
||||
addmask_key = cplim = rn_ones + max_keylen;
|
||||
while (cp < cplim)
|
||||
*cp++ = -1;
|
||||
if (rn_inithead((void **)&mask_rnhead, 0) == 0)
|
||||
if (rn_inithead((void *)&mask_rnhead, 0) == 0)
|
||||
panic("rn_init 2");
|
||||
}
|
||||
|
||||
@@ -25,6 +25,11 @@
|
||||
|
||||
*/
|
||||
|
||||
/* Since we compile with strict ANSI we need to undef it to get
|
||||
* prototypes for extensions
|
||||
*/
|
||||
#undef __STRICT_ANSI__
|
||||
|
||||
#include <errno.h>
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
|
||||
@@ -39,6 +39,11 @@ static char *rcsid = "$FreeBSD: src/lib/libc/rpc/clnt_perror.c,v 1.11 1999/08/28
|
||||
* Copyright (C) 1984, Sun Microsystems, Inc.
|
||||
*
|
||||
*/
|
||||
/* Since we compile with strict ANSI we need to undef it to get
|
||||
* prototypes for extensions
|
||||
*/
|
||||
#undef __STRICT_ANSI__
|
||||
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
/*
|
||||
* RTEMS multi-tasking support
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#include <rpc/rpc.h>
|
||||
@@ -44,7 +46,8 @@ int rtems_rpc_task_init (void)
|
||||
* - Go through and free linked list elements
|
||||
* - Free other allocated memory (e.g. clnt_perror_buf)
|
||||
*/
|
||||
sc = rtems_task_variable_add (RTEMS_SELF, &rtems_rpc_task_variables, NULL);
|
||||
sc = rtems_task_variable_add (
|
||||
RTEMS_SELF, (void *)&rtems_rpc_task_variables, NULL);
|
||||
if (sc != RTEMS_SUCCESSFUL) {
|
||||
free (tvp);
|
||||
return sc;
|
||||
|
||||
@@ -43,6 +43,11 @@ static char *rcsid = "$FreeBSD: src/lib/libc/rpc/svc.c,v 1.14 1999/08/28 00:00:4
|
||||
* Copyright (C) 1984, Sun Microsystems, Inc.
|
||||
*/
|
||||
|
||||
/* Since we compile with strict ANSI we need to undef it to get
|
||||
* prototypes for extensions
|
||||
*/
|
||||
#undef __STRICT_ANSI__
|
||||
|
||||
#include <string.h>
|
||||
#include <stdlib.h>
|
||||
#include <sys/errno.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 */ \
|
||||
)
|
||||
|
||||
/*
|
||||
|
||||
@@ -46,7 +46,7 @@
|
||||
*/
|
||||
|
||||
#define _Chain_Head( _the_chain ) \
|
||||
((Chain_Node *) (_the_chain))
|
||||
((Chain_Node *) ((void *)(_the_chain)))
|
||||
|
||||
/*PAGE
|
||||
*
|
||||
@@ -54,7 +54,7 @@
|
||||
*/
|
||||
|
||||
#define _Chain_Tail( _the_chain ) \
|
||||
((Chain_Node *) &(_the_chain)->permanent_null)
|
||||
((Chain_Node *) ((void *)&(_the_chain)->permanent_null))
|
||||
|
||||
/*PAGE
|
||||
*
|
||||
|
||||
@@ -40,6 +40,7 @@ Objects_Name_or_id_lookup_errors _Objects_Id_to_name (
|
||||
unsigned32 the_class;
|
||||
Objects_Information *information;
|
||||
Objects_Control *the_object = (Objects_Control *) 0;
|
||||
Objects_Locations ignored_location;
|
||||
|
||||
if ( !name )
|
||||
return OBJECTS_INVALID_NAME;
|
||||
@@ -57,7 +58,7 @@ Objects_Name_or_id_lookup_errors _Objects_Id_to_name (
|
||||
if ( information->is_string )
|
||||
return OBJECTS_INVALID_ID;
|
||||
|
||||
the_object = _Objects_Get( information, id, OBJECTS_SEARCH_LOCAL_NODE );
|
||||
the_object = _Objects_Get( information, id, &ignored_location );
|
||||
if (!the_object)
|
||||
return OBJECTS_INVALID_ID;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user