forked from Imagelibrary/rtems
2004-09-29 Joel Sherrill <joel@OARcorp.com>
* configure.ac, libmisc/cpuuse/README, libmisc/stackchk/README, librpc/src/xdr/xdr_float.c, score/cpu/Makefile.am, score/include/rtems/score/mppkt.h: i960 obsoleted and all references removed.
This commit is contained in:
@@ -1,3 +1,10 @@
|
||||
2004-09-29 Joel Sherrill <joel@OARcorp.com>
|
||||
|
||||
* configure.ac, libmisc/cpuuse/README, libmisc/stackchk/README,
|
||||
librpc/src/xdr/xdr_float.c, score/cpu/Makefile.am,
|
||||
score/include/rtems/score/mppkt.h: i960 obsoleted and all references
|
||||
removed.
|
||||
|
||||
2004-09-29 Joel Sherrill <joel@OARcorp.com>
|
||||
|
||||
* score/cpu/i960/.cvsignore, score/cpu/i960/ChangeLog,
|
||||
|
||||
@@ -285,7 +285,6 @@ score/cpu/avr/Makefile
|
||||
score/cpu/c4x/Makefile
|
||||
score/cpu/h8300/Makefile
|
||||
score/cpu/i386/Makefile
|
||||
score/cpu/i960/Makefile
|
||||
score/cpu/m68k/Makefile
|
||||
score/cpu/mips/Makefile
|
||||
score/cpu/or32/Makefile
|
||||
|
||||
@@ -2,40 +2,13 @@
|
||||
# $Id$
|
||||
#
|
||||
|
||||
This directory contains a stack bounds checker. It provides two
|
||||
This directory contains a CPU usage reported. It provides two
|
||||
primary features:
|
||||
|
||||
+ check for stack overflow at each context switch
|
||||
+ provides an educated guess at each task's stack usage
|
||||
|
||||
The stack overflow check at context switch works by looking for
|
||||
a 16 byte pattern at the logical end of the stack to be corrupted.
|
||||
The "guesser" assumes that the entire stack was prefilled with a known
|
||||
pattern and assumes that the pattern is still in place if the memory
|
||||
has not been used as a stack.
|
||||
|
||||
Both of these can be fooled by pushing large holes onto the stack
|
||||
and not writing to them... or (much more unlikely) writing the
|
||||
magic patterns into memory.
|
||||
|
||||
This code has not been extensively tested. It is provided as a tool
|
||||
for RTEMS users to catch the most common mistake in multitasking
|
||||
systems ... too little stack space. Suggestions and comments are appreciated.
|
||||
+ provides an educated guess at each task's CPU usage
|
||||
|
||||
NOTES:
|
||||
|
||||
1. Stack usage information is questionable on CPUs which push
|
||||
large holes on stack.
|
||||
1. CPU usage is "docked" by a clock tick at each context switch.
|
||||
|
||||
2. The stack checker has a tendency to generate a fault when
|
||||
trying to print the helpful diagnostic message. If it comes
|
||||
out, congratulations. If not, then the variable Stack_check_Blown_task
|
||||
contains a pointer to the TCB of the offending task. This
|
||||
is usually enough to go on.
|
||||
|
||||
FUTURE:
|
||||
|
||||
1. Determine how/if gcc will generate stack probe calls and support that.
|
||||
|
||||
2. Get accurate stack usage numbers on i960.. it pushes very large
|
||||
holes on the stack.
|
||||
|
||||
@@ -51,6 +51,3 @@ NOTES:
|
||||
FUTURE:
|
||||
|
||||
1. Determine how/if gcc will generate stack probe calls and support that.
|
||||
|
||||
2. Get accurate stack usage numbers on i960.. it pushes very large
|
||||
holes on the stack.
|
||||
|
||||
@@ -60,7 +60,6 @@ static char *rcsid = "$FreeBSD: src/lib/libc/xdr/xdr_float.c,v 1.7 1999/08/28 00
|
||||
defined(__H8300__) || defined(__H8300H__) || defined(__H8300S__) || \
|
||||
defined(__hppa__) || \
|
||||
defined(__i386__) || \
|
||||
defined(__i960__) || \
|
||||
defined(__m68k__) || defined(__mc68000__) || \
|
||||
defined(__mips__) || \
|
||||
defined(__ns32k__) || \
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
|
||||
SUBDIRS = @RTEMS_CPU@
|
||||
|
||||
DIST_SUBDIRS = arm c4x h8300 i386 i960 m68k mips no_cpu or32 powerpc sh \
|
||||
DIST_SUBDIRS = arm c4x h8300 i386 m68k mips no_cpu or32 powerpc sh \
|
||||
sparc unix
|
||||
DIST_SUBDIRS += avr
|
||||
|
||||
|
||||
@@ -54,10 +54,9 @@ typedef enum {
|
||||
* The following record contains the prefix for every packet
|
||||
* passed between nodes in an MP system.
|
||||
*
|
||||
* NOTE: This structure is padded to insure that anything
|
||||
* following it is on a 16 byte boundary. This is
|
||||
* the most stringent structure alignment rule
|
||||
* encountered yet (i960CA).
|
||||
* NOTE: This structure is padded to ensure that anything following it
|
||||
* is on a 16 byte boundary. This is the most stringent structure
|
||||
* alignment rule encountered yet.
|
||||
*/
|
||||
|
||||
typedef struct {
|
||||
|
||||
Reference in New Issue
Block a user