PR 1237/rtems
* cpu.c, cpu_asm.S, rtems/score/cpu.h: Add logic to prevent stack creep
when interrupts occur at a sufficient rate that the interrupted
thread never gets to clean its stack. This patch ensures that an
interrupted thread will not nest ISR dispatches on its stack.
PR 1237/rtems
* src/lib/libbsp/shared/bsplibc.c: Add logic to prevent stack creep
when interrupts occur at a sufficient rate that the interrupted
thread never gets to clean its stack. This patch ensures that an
interrupted thread will not nest ISR dispatches on its stack.
* custom/gba.cfg, custom/gp32.cfg, custom/i386ex.cfg, custom/pc386.cfg,
custom/sim68000.cfg, custom/ts_386ex.cfg: Clean up to use .nxe
extension instead of BSP unique ones.
* minimum/Makefile.am, minimum/init.c: Switch back to using optional
manager support. Also add use of CONFIGURE_DISABLE_NEWLIB_REENTRANCY
to demonstrate that the newlib reentrancy support is optional.
* optman/Makefile.am, optman/preinstall.am, optman/rtems/no-dpmem.c,
optman/rtems/no-event.c, optman/rtems/no-mp.c, optman/rtems/no-msg.c,
optman/rtems/no-part.c, optman/rtems/no-region.c,
optman/rtems/no-rtmon.c, optman/rtems/no-sem.c,
optman/rtems/no-signal.c, optman/rtems/no-timer.c,
optman/sapi/no-ext.c: Add optional manager stub for Barrier. Simplify
other optional managers so using them reduces application size
instead of increasing it.
* optman/rtems/no-barrier.c: New file.
* libcsupport/include/rtems/libcsupport.h, libcsupport/src/newlibc.c,
sapi/Makefile.am, sapi/include/confdefs.h, sapi/src/exinit.c,
score/Makefile.am, score/preinstall.am,
score/include/rtems/score/userext.h, score/src/chain.c,
score/src/userext.c: Switch to newlib reentrancy extension being
installed in the initial set instead of using rtems_extension_create.
While implementing this, noticed that user extensions and chain code
had multiple functions in a single file which is not desirable in the
SuperCore and API portions of RTEMS, so split these into multiple
files with one function per file. Also noticed that some of user
extension code was inlined for no particular reason so moved that to
C bodies. Split executive shutdown from initialization since not
every application shuts down. Moved __fini call to executive shutdown
to be more symmetrical with where it is called at startup.
* sapi/src/exshutdown.c, score/src/chainappend.c,
score/src/chainextract.c, score/src/chainget.c,
score/src/chaininsert.c, score/src/userextaddapiset.c,
score/src/userextaddset.c, score/src/userextremoveset.c,
score/src/userextthreadbegin.c, score/src/userextthreadcreate.c,
score/src/userextthreaddelete.c, score/src/userextthreadrestart.c,
score/src/userextthreadstart.c, score/src/userextthreadswitch.c: New
files.
* score/inline/rtems/score/userext.inl: Removed.
* console/debugputs.c, include/bsp.h, leon_smc91111/leon_smc91111.c,
startup/bspstart.c, startup/spurious.c: Remove debug print methods
that are redundant with prntk and replace their use with printk.
* console/debugputs.c, include/bsp.h, leon_smc91111/leon_smc91111.c,
startup/spurious.c: Remove debug print methods that are redundant
with prntk and replace their use with printk.
* console/uart.c, startup/bspclean.c, startup/bspstart.c: Remove debug
print methods that are redundant with prntk and replace their usage
with printk.