* libmisc/monitor/monitor.h, rtems/include/rtems/rtems/tasks.h,
score/include/rtems/score/thread.h, score/src/threadreset.c,
score/src/threadrestart.c, score/src/threadstart.c: New type
Thread_Entry_numeric_type for numeric arguments in thread entry
functions with at least one numeric argument.
* libcsupport/src/_rename_r.c: Fixed return code bug. Add a check
to see if the 'to' path was a directory and removed the directory.
* libmisc/Makefile.am, libmisc/shell/shellconfig.h: Added the mv command.
* libmisc/shell/main_mv.c, libmisc/shell/pathnames-mv.h: New.
* rtems/include/rtems/rtems/sem.h, rtems/src/semobtain.c:
Changed option set type to rtems_option.
* score/src/objectgetinfo.c: Check return value of
_Objects_API_maximum_class().
* libmisc/monitor/mon-mpci.c, libmisc/monitor/monitor.h,
rtems/include/rtems/rtems/message.h, rtems/src/msgmp.c,
rtems/src/msgqallocate.c, rtems/src/msgqbroadcast.c,
rtems/src/msgqcreate.c, rtems/src/msgqreceive.c, rtems/src/msgqsend.c,
rtems/src/msgqurgent.c, score/include/rtems/score/coremsg.h,
score/include/rtems/score/mpci.h, score/include/rtems/score/thread.h,
score/inline/rtems/score/coremsg.inl, score/src/coremsg.c,
score/src/coremsgbroadcast.c, score/src/coremsgseize.c,
score/src/coremsgsubmit.c:
Removed parameters of _Message_queue_Allocate(). Changed option set
type to rtems_option. Changed type of maximum message and packet size
to size_t. Changed the input buffer type for message send functions to
"const void *". Changed the pointer to the second return argument in
the thread wait information to a union. This union can contain a
pointer to an immutable or a mutable object. This is somewhat fragile.
An alternative would be to add a third pointer for immutable objects,
but this would increase the structure size.
* libblock/Makefile.am: Removed src/show_bdbuf.c.
* libblock/src/show_bdbuf.c: Removed.
* libblock/include/rtems/bdbuf.h, cpukit/libblock/src/bdbuf.c:
Rewritten the bdbuf code. Remove pre-emption disable, score
access, fixed many bugs and increased performance.
* libblock/include/rtems/blkdev.h: Added
RTEMS_BLKDEV_CAPABILITIES block device request. Cleaned up
comments. Added block and user fields to the sg buffer
request. Move to rtems_* namespace.
* libblock/include/rtems/diskdevs.h,
cpukit/libblock/src/diskdevs.c: Move to rtems_* namespace. Add a
capabilities field for drivers. Change rtems_disk_lookup to
rtems_disk_obtain to match the release call. You do not lookup and
release a disk, you obtain and release a disk.
* libblock/include/rtems/ide_part_table.h,
libblock/include/rtems/ramdisk.h, libblock/src/ide_part_table.c:
Move to rtems_* namespace.
* libblock/include/rtems/nvdisk.h: Formatting change.
* libblock/src/blkdev.c: Move to rtems_* namespace. Change
rtems_disk_lookup to rtems_disk_obtain
* libblock/src/flashdisk.c: Move to rtems_* namespace. Use the new
support for the block number in the scatter/grather request
struct. This allows non-continuous buffer requests for those
drivers that can support increasing performance.
* libblock/src/nvdisk.c: Move to rtems_* namespace. Removed
warnings. Added better error checking. Fixed some comments.
* libblock/src/ramdisk.c: Move to rtems_* namespace. Added some
trace functions to help debugging upper layers. Use the new
support for the block number in the scatter/grather request
struct. This allows non-continuous buffer requests for those
drivers that can support increasing performance.
* libfs/src/dosfs/fat.c, libfs/src/dosfs/fat.h: Use new chains
API. Removed temporary hack and changed
set_errno_and_return_minus_one to
rtems_set_errno_and_return_minus_one. Move fat_buf_access from
header and stopped it being inlined. Updated to libblock changes.
* libfs/src/dosfs/fat_fat_operations.c,
libfs/src/dosfs/fat_file.c, libfs/src/dosfs/msdos_create.c,
libfs/src/dosfs/msdos_dir.c, libfs/src/dosfs/msdos_eval.c,
libfs/src/dosfs/msdos_file.c, libfs/src/dosfs/msdos_format.c,
libfs/src/dosfs/msdos_free.c, libfs/src/dosfs/msdos_initsupp.c,
libfs/src/dosfs/msdos_misc.c, libfs/src/dosfs/msdos_mknod.c: Use
new chains API. Removed temporary hack and changed
set_errno_and_return_minus_one to
rtems_set_errno_and_return_minus_one. Updated to libblock changes.
* libmisc/Makefile.am: Add new ls and rm command files.
* libmisc/shell/cmp-ls.c, libmisc/shell/extern-ls.h,
libmisc/shell/filemode.c, libmisc/shell/print-ls.c,
libmisc/shell/pwcache.c, libmisc/shell/utils-ls.c,
libmisc/shell/vis.c, shell/vis.h: New.
* libmisc/shell/extern-cp.h, libmisc/shell/main_cp.c,
libmisc/shell/utils-cp.c: Fixed the usage call bug.
* libmisc/shell/main_blksync.c: Updated to the new block IO ioctl
command.
* libmisc/shell/main_ls.c, libmisc/shell/main_rm.c: Updated to BSD
commands with more features.
* score/src/coremutex.c: Fix the strick order mutex code.
* libmisc/shell/shell.c: Change shell tasks mode to be timeslice
and no ASR.
* sapi/include/confdefs.h: Change ata_driver_task_priority to
rtems_ata_driver_task_priority. Add the new BD buf cache
parameters with defaults.
* score/src/interr.c: Do not return if the CPU halt call returns.
* libmisc/monitor/mon-extension.c, libmisc/monitor/mon-itask.c,
libmisc/monitor/mon-part.c, libmisc/monitor/mon-prmisc.c,
libmisc/monitor/mon-queue.c, libmisc/monitor/mon-region.c,
libmisc/monitor/mon-sema.c, libmisc/monitor/mon-task.c,
libmisc/monitor/monitor.h: Use rtems_object_get_name() instead of
internal routine. This makes it possible to also print string names
of POSIX objects. Adjust task report to realign since we can have
longer names.
* libmisc/monitor/mon-monitor.c, libmisc/monitor/mon-object.c,
libmisc/monitor/monitor.h, libmisc/shell/main_chmod.c,
libmisc/shell/main_tty.c, libmisc/shell/main_umask.c,
libmisc/shell/main_whoami.c: Add pthread command to monitor when
POSIX is enabled. Remove include of rtems/monitor.h from files not
related.
* libmisc/shell/shell.c, libmisc/shell/shell.h: New argument sequence
for rtems_shell_init(). This makes it possible to run the shell
forever or invoke it from a program as a subroutine, have a user
enter commands, and wait for it to exit.
* libcsupport/src/__times.c, libmisc/cpuuse/cpuusagereport.c,
libmisc/cpuuse/cpuusagereset.c, libmisc/monitor/mon-task.c,
rtems/include/rtems/rtems/ratemon.h, rtems/src/ratemongetstatus.c,
rtems/src/ratemonperiod.c, score/include/rtems/score/thread.h,
score/src/threaddispatch.c, score/src/threadinitialize.c,
score/src/threadtickletimeslice.c: Add typedefs for cpu usage and
period timing statistics. Also renamed related variables and
structure members so they are the same whether you are using
nanosecond (e.g. struct timespec) or ticks (e.g. uint32_t)
granularity. This lays the groundwork for future cleanup.
* libmisc/shell/shell_getchar.c: Minor change so dropping connection
while at prompt results in shell logging out and connection still
being available.
* libmisc/dummy/dummy.c, sapi/include/confdefs.h: Add checks for
application configuration errors. If any POSIX objects or a POSIX
init thread is configured without POSIX being configure, then error
out. Similarly for ITRON. Add
CONFIGURE_APPLICATION_DOES_NOT_NEED_CLOCK_DRIVER configuration
parameter so the application has to explicitly configure the Clock
driver in or out if the Timer driver is not configured. Also verify
RTEMS was built for multiprocessing, if the user tries to configure a
multiprocessing application.
* libmisc/shell/shell.c, libmisc/shell/shell.h,
libmisc/shell/shell_script.c: Add support to echo the commands to
stdout. This is useful with the -v script option to show commands
as the run. Also added support to chdir to the directory the task
invoking the script is in.
* libmisc/shell/extern-cp.h, libmisc/shell/main_cp.c,
libmisc/shell/utils-cp.c: Update tro the latest FreeBSD version.
* libcsupport/Makefile.am, libcsupport/src/fchown.c: Add fchown
support.
* libmisc/shell/shell.c: Copy the cmd line to a buffer to split
into argv parts. Was using the command line history buffer so the
history was being corrupted.
* libfs/src/nfsclient/src/librtemsNfs.h,
libfs/src/nfsclient/src/nfs.c: Remove CEXP references. CEXP is
external to RTEMS and even if in the cpukit it should not cross
reference in this way.
* libmisc/shell/shell_getchar.c: New. Taken from the monitor.
* libmisc/Makefile.am: Add shell_getchar.c and clean up a little
in the shell area.
* libmisc/shell/shell.c, libmisc/shell/shell.h: Add line editting
support.
* libmisc/shell/main_cp.c, libmisc/shell/main_netstats.c,
libmisc/shell/shell_script.c: Add memset() of getopt_data to
ensure it is zeroed out each time we use getopt_r().
* libmisc/shell/shell.c: Do not echo commands if input is not a tty.
This makes the scripts behave more like UNIX scripts.
* libmisc/shell/cat_file.c, libmisc/shell/main_alias.c,
libmisc/shell/main_blksync.c, libmisc/shell/main_cat.c,
libmisc/shell/main_chdir.c, libmisc/shell/main_chmod.c,
libmisc/shell/main_chroot.c, libmisc/shell/main_cpuuse.c,
libmisc/shell/main_date.c, libmisc/shell/main_help.c,
libmisc/shell/main_id.c, libmisc/shell/main_logoff.c,
libmisc/shell/main_ls.c, libmisc/shell/main_mallocinfo.c,
libmisc/shell/main_mdump.c, libmisc/shell/main_medit.c,
libmisc/shell/main_mfill.c, libmisc/shell/main_mkdir.c,
libmisc/shell/main_mmove.c, libmisc/shell/main_mount.c,
libmisc/shell/main_mount_nfs.c, libmisc/shell/main_msdosfmt.c,
libmisc/shell/main_mwdump.c, libmisc/shell/main_perioduse.c,
libmisc/shell/main_pwd.c, libmisc/shell/main_rm.c,
libmisc/shell/main_rmdir.c, libmisc/shell/main_stackuse.c,
libmisc/shell/main_tty.c, libmisc/shell/main_umask.c,
libmisc/shell/main_unmount.c, libmisc/shell/main_whoami.c,
libmisc/shell/shell.h: Clean up done while writing documentation.
Some command improvements such as date now allows setting of the
current TOD. Often commands did not use stdout/stderr per
expectations and did not return -1 on an error.
* libmisc/Makefile.am, libmisc/shell/main_wkspaceinfo.c,
libmisc/shell/shell.c, libmisc/shell/shellconfig.h: Add route and
ifconfig commands. The code for these was previously in the
networking guide. Disable NFS filesystem mount until that code is in
cpukit.
* libmisc/shell/main_ifconfig.c, libmisc/shell/main_route.c: New files.
* libcsupport/src/printk.c: Added width and padding for %s.
* libmisc/cpuuse/cpuusagereport.c: Support object names that are
strings longer than 4 chanracters.
* 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.
* configure.ac: Fix typo in the strict order mutex CPU OPTs test.
* libmisc/shell/shell.c: Handle '#' comment characters correctly.
* libblock/include/rtems/flashdisk.h: Add docmentation about the
control fields. Add more control fields to handle the flash when
full.
* libblock/src/flashdisk.c: Fix the descriptor erase test so it
detects a descriptor is erased. Add support for unavailable blocks
the user can configure. Print the used list as a diag. Fix the bug
when a page is detected as failed and present on more than one
queue. Add a count to the queues so queue length can be used to
manage compaction.
* configure.ac: fixed bug that always enabled strict order
mutexes.
* score/inline/rtems/score/coremutex.inl: Fixed coding standard.
* score/src/coremutex.c: Add the holder's thread to the lock_mutex
list if the mutex is initialised locked.
* libnetworking/rtems/rtems_glue.c: Changed semaphore error
message to show the error is an rtems-net error.
* libmisc/monitor/mon-network.c: Removed warnings.
* telnetd/icmds.c: Changed shell_* to rtems_shell_*.
* score/Makefile.am: Fixed typo that stopped 'make tags' working.
* libmisc/shell/err.c, libmisc/shell/err.h, libmisc/shell/errx.c,
libmisc/shell/extern-cp.h, libmisc/shell/fts.c,
libmisc/shell/fts.h, libmisc/shell/main_cp.c,
libmisc/shell/utils-cp.c, libmisc/shell/verr.c,
libmisc/shell/verrx.c, libmisc/shell/vwarn.c,
libmisc/shell/vwarnx.c, libmisc/shell/warn.c,
libmisc/shell/warnx.c: New. Ported from BSD.
* libmisc/shell/shellconfig.h: Add the cp command.
* libmisc/Makefile.am: Add the new files to the shell.
* libmisc/shell/shell.c, libmisc/shell/shell.h: Add scripting
support.
* libblock/src/flashdisk.c: Fixed disk drive count size setting
bug.
* libcsupport/Makefile.am, libcsupport/preinstall.am,
libcsupport/src/malloc.c, libcsupport/src/mallocinfo.c,
libmisc/Makefile.am, libmisc/shell/main_mallocinfo.c,
libmisc/shell/shellconfig.h: Split malloc.c into multiple files with
one function per file. Also split out statistics into a separate file
which can be plugged in dynamically. Right now, it is always in. I
suspect that splitting the file removed more code than leaving
statistics in. I tinkered with malloc information command in the
shell. I resurrected the malloc arena code as malloc boundary. This
code is now compiled all the time even though it does not appear to
work.
* libcsupport/include/rtems/malloc.h, libcsupport/src/_calloc_r.c,
libcsupport/src/_free_r.c, libcsupport/src/_malloc_r.c,
libcsupport/src/_realloc_r.c, libcsupport/src/calloc.c,
libcsupport/src/free.c, libcsupport/src/malloc_boundary.c,
libcsupport/src/malloc_get_statistics.c,
libcsupport/src/malloc_initialize.c, libcsupport/src/malloc_p.h,
libcsupport/src/malloc_report_statistics.c,
libcsupport/src/malloc_report_statistics_plugin.c,
libcsupport/src/malloc_statistics_helpers.c,
libcsupport/src/malloc_walk.c, libcsupport/src/realloc.c,
libmisc/shell/main_perioduse.c: New files.