* itron/include/rtems/itron/object.h, itron/src/cre_tsk.c,
libblock/src/show_bdbuf.c, libmisc/capture/capture-cli.c,
libmisc/capture/capture.c, libmisc/monitor/mon-manager.c,
libmisc/stackchk/check.c, posix/src/condinit.c,
posix/src/keycreate.c, posix/src/mqueuecreatesupp.c,
posix/src/mqueuedeletesupp.c, posix/src/mqueuenametoid.c,
posix/src/mqueueopen.c, posix/src/mqueueunlink.c,
posix/src/mutexinit.c, posix/src/pbarrierinit.c,
posix/src/prwlockinit.c, posix/src/pspininit.c,
posix/src/pthreadcreate.c, posix/src/pthreadexit.c,
posix/src/semaphorecreatesupp.c, posix/src/semaphorenametoid.c,
posix/src/timercreate.c, rtems/src/barrierident.c,
rtems/src/dpmemident.c, rtems/src/msgqident.c, rtems/src/partident.c,
rtems/src/ratemonident.c, rtems/src/regionident.c,
rtems/src/semident.c, rtems/src/taskident.c, rtems/src/timerident.c,
sapi/src/extensionident.c, score/Makefile.am,
score/include/rtems/score/object.h,
score/inline/rtems/score/object.inl, score/src/apimutexallocate.c,
score/src/objectextendinformation.c,
score/src/objectgetnameasstring.c, score/src/objectmp.c,
score/src/objectnametoid.c: Convert the Objects_Name type from a
simple type to a union of an unsigned 32 bit integer and a pointer.
This should help eliminate weird casts between u32 and pointers in
various places. The APIs now have to explicitly call _u32 or _string
versions of helper routines. This should also simplify things and
eliminate the need for ugly casts in some cases.
* score/src/objectclearname.c, score/src/objectcomparenameraw.c,
score/src/objectcomparenamestring.c, score/src/objectcopynameraw.c,
score/src/objectcopynamestring.c: Removed.
* libmisc/stackchk/check.c: Eliminate output with little information.
Always print a blown message using the same routine. Now works with
GNAT RTS -fstack-checking if you have patch for the RTEMS specific
support in your GCC version.
* libcsupport/Makefile.am, libcsupport/src/printk.c:
* libcsupport/src/printk_plugin.c: New file.
include/rtems/bspIo.h, libmisc/cpuuse/cpuusagereport.c,
libmisc/cpuuse/cpuuse.h, libmisc/stackchk/check.c,
libmisc/stackchk/stackchk.h: rtems/include/rtems/rtems/ratemon.h,
rtems/src/ratemonreportstatistics.c: Added capability to specify
your own "printf" routine to various reporting functions. This
added an XXX_with_plugin as the underlying implementation for
+ rtems_rate_monotonic_report_statistics
+ rtems_stack_checker_report_usage
+ rtems_cpu_usage_report
As demonstration, the http netdemo can now print out stack
and cpu usage reports.
* ChangeLog, configure.ac, libcsupport/src/__times.c,
libmisc/cpuuse/cpuuse.c, libmisc/stackchk/check.c,
rtems/include/rtems/rtems/ratemon.h, rtems/src/ratemongetstatus.c,
rtems/src/ratemonperiod.c, rtems/src/ratemonreportstatistics.c,
rtems/src/ratemonresetall.c, rtems/src/ratemontimeout.c,
score/Makefile.am, score/include/rtems/score/thread.h,
score/include/rtems/score/timespec.h, score/src/threaddispatch.c,
score/src/threadinitialize.c, score/src/threadtickletimeslice.c,
score/src/timespecdivide.c: Add nanoseconds granularity to the rate
monotonic period statistics and CPU usage statistics. This capability
is enabled by default although may be conditionally disabled by the
user. It could be too much overhead on small targets but it does not
appear to be bad in early testing. Its impact on code size has not
been evaluated either. It is possible that both forms of statistics
gathering could be disabled with further tweaking of the conditional
compilation.
* score/src/timespecdividebyinteger.c: New file.
* libmisc/cpuuse/cpuuse.c, libmisc/stackchk/check.c,
libmisc/stackchk/stackchk.h: Clean up as side-effect of making them
suitable for inclusion in the Users Guide.
* libmisc/stackchk/check.c, libmisc/stackchk/internal.h,
libmisc/stackchk/stackchk.h: Move stack to first class citizen
status. Include it in User Manual and rename to start with rtems_.
* stackchk/check.c: Fix problem where _Objects_Get_information()
will dereference a null pointer when checking the interrupt stack.
If there's something at 0, you may be ok at run time but it is wrong.
* configure.ac: Add check for weak function attribute.
Remove AM_CONDITIONAL([RTEMS_LIBSHELL].
Add AM_CONDITIONAL(LIBSHELL), AM_CONDITIONAL(LIBSERDBG).
* capture/Makefile.am: Use *.a instead of *-tmp.a.
* cpuuse/Makefile.am: Use *.a instead of *-tmp.a.
* devnull/Makefile.am: Use *.a instead of *-tmp.a.
* dummy/Makefile.am: Use *.a instead of *-tmp.a.
* dumpbuf/Makefile.am: Use *.a instead of *-tmp.a.
* monitor/Makefile.am: Use *.a instead of *-tmp.a.
* mw-fb/Makefile.am: Use *.a instead of *-tmp.a.
* rtmonuse/Makefile.am: Use *.a instead of *-tmp.a.
* serdbg/Makefile.am: Use *.a instead of *-tmp.a.
Build iff LIBSERDBG is true.
* shell/Makefile.am: Use *.a instead of *-tmp.a.
Build iff LIBSHELL is true.
* stackchk/Makefile.am: Use *.a instead of *-tmp.a.
* untar/Makefile.am: Use *.a instead of *-tmp.a.
* wrapup/Makefile.am: Reflect changes above.
* capture/Makefile.am: Don't include @RTEMS_BSP@.cfg.
* cpuuse/Makefile.am: Don't include @RTEMS_BSP@.cfg.
* devnull/Makefile.am: Don't include @RTEMS_BSP@.cfg.
* dummy/Makefile.am: Don't include @RTEMS_BSP@.cfg.
* dumpbuf/Makefile.am: Don't include @RTEMS_BSP@.cfg.
* monitor/Makefile.am: Don't include @RTEMS_BSP@.cfg.
* mw-fb/Makefile.am: Don't include @RTEMS_BSP@.cfg.
* rtmonuse/Makefile.am: Don't include @RTEMS_BSP@.cfg.
* serdbg/Makefile.am: Don't include @RTEMS_BSP@.cfg.
* shell/Makefile.am: Don't include @RTEMS_BSP@.cfg.
* stackchk/Makefile.am: Don't include @RTEMS_BSP@.cfg.
* untar/Makefile.am: Don't include @RTEMS_BSP@.cfg.
* wrapup/Makefile.am: Don't include @RTEMS_BSP@.cfg.
* capture/Makefile.am: Use .$(OBJEXT) instead of .o.
* cpuuse/Makefile.am: Use .$(OBJEXT) instead of .o.
* devnull/Makefile.am: Use .$(OBJEXT) instead of .o.
* dummy/Makefile.am: Use .$(OBJEXT) instead of .o.
* dumpbuf/Makefile.am: Use .$(OBJEXT) instead of .o.
* monitor/Makefile.am: Use .$(OBJEXT) instead of .o.
* mw-fb/Makefile.am: Use .$(OBJEXT) instead of .o.
* rtmonuse/Makefile.am: Use .$(OBJEXT) instead of .o.
* serdbg/Makefile.am: Use .$(OBJEXT) instead of .o.
* shell/Makefile.am: Use .$(OBJEXT) instead of .o.
* stackchk/Makefile.am: Use .$(OBJEXT) instead of .o.
* untar/Makefile.am: Use .$(OBJEXT) instead of .o.
* untar/Makefile.am: Use 'PREINSTALL_FILES ='.
* monitor/Makefile.am: Use 'PREINSTALL_FILES ='.
* shell/Makefile.am: Use 'PREINSTALL_FILES ='.
* devnull/Makefile.am: Use 'PREINSTALL_FILES ='.
* dumpbuf/Makefile.am: Use 'PREINSTALL_FILES ='.
* mw-fb/Makefile.am: Use 'PREINSTALL_FILES ='.
* stackchk/Makefile.am: Use 'PREINSTALL_FILES ='.
* rtmonuse/Makefile.am: Use 'PREINSTALL_FILES ='.
* cpuuse/Makefile.am: Use 'PREINSTALL_FILES ='.
* rootfs/Makefile.am: Use 'PREINSTALL_FILES ='.