| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
PR 1729/cpukit
* configure.ac, sapi/include/confdefs.h, sapi/src/exinit.c,
score/Makefile.am, score/preinstall.am,
score/cpu/i386/rtems/score/cpu.h, score/cpu/sparc/cpu_asm.S,
score/cpu/sparc/rtems/score/cpu.h,
score/include/rtems/score/basedefs.h,
score/include/rtems/score/context.h,
score/include/rtems/score/percpu.h, score/src/percpu.c,
score/src/thread.c, score/src/threadcreateidle.c: Add next step in
SMP support. This adds an allocated array of the Per_CPU structures
to support multiple cpus vs a single instance of the structure which
is still used if SMP support is disabled. Configuration support is
also added to explicitly enable or disable SMP. But SMP can only be
enabled for the CPUs which will support it initially -- SPARC and
i386. With the stub BSP support, a BSP can be run as a single core
SMP system from an RTEMS data structure standpoint.
* aclocal/check-smp.m4, aclocal/enable-smp.m4,
score/include/rtems/bspsmp.h, score/include/rtems/score/smplock.h,
score/src/smp.c, score/src/smplock.c: New files.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
PR 1743/cpu
* sapi/include/confdefs.h, score/Makefile.am, score/preinstall.am: Add
Simple Priority Scheduler as complement to existing Deterministic
Priority Scheduler. This scheduler serves both as an example and as a
lighter weight implementation for smaller systems.
* score/include/rtems/score/schedulersimple.h,
score/inline/rtems/score/schedulersimple.inl,
score/src/schedulersimple.c, score/src/schedulersimpleblock.c,
score/src/schedulersimpleenqueue.c,
score/src/schedulersimpleenqueuefirst.c,
score/src/schedulersimpleextract.c,
score/src/schedulersimplereadyqueueenqueue.c,
score/src/schedulersimplereadyqueueenqueuefirst.c,
score/src/schedulersimpleschedule.c,
score/src/schedulersimpleunblock.c, score/src/schedulersimpleyield.c:
New files.
|
|
|
|
| |
* sapi/include/rtems/extension.h: Documentation.
|
|
|
|
| |
* sapi/include/confdefs.h: Typos.
|
|
|
|
| |
* sapi/include/rtems/fatal.h: Add missing includes.
|
|
|
|
|
| |
* sapi/include/confdefs.h,
score/include/rtems/score/schedulerpriority.h: Add comments.
|
|
|
|
|
| |
* sapi/include/confdefs.h,
score/include/rtems/score/schedulerpriority.h: C++ compatibility.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* sapi/include/confdefs.h, score/Makefile.am,
score/include/rtems/score/scheduler.h,
score/include/rtems/score/schedulerpriority.h,
score/include/rtems/score/thread.h,
score/inline/rtems/score/scheduler.inl,
score/inline/rtems/score/schedulerpriority.inl,
score/src/scheduler.c, score/src/schedulerpriority.c,
score/src/schedulerpriorityblock.c,
score/src/schedulerpriorityschedule.c,
score/src/schedulerpriorityunblock.c,
score/src/schedulerpriorityyield.c, score/src/threadchangepriority.c,
score/src/threadclose.c, score/src/threadinitialize.c,
score/src/threadsetpriority.c, score/src/threadsettransient.c:
Significant clean up on Scheduler Plugin Interface. Names were
shortened. Missing operations added. Many scheduler files had
unneeded includes removed. Made pointer to scheduler information in
Thread_Control and Scheduler_Control a void * pointer because the
thread and scheduler wrapper should be unaware of scheduler types AND
this is broken for user provided schedulers.
* score/src/schedulerpriorityallocate.c,
score/src/schedulerpriorityenqueue.c,
score/src/schedulerpriorityenqueuefirst.c,
score/src/schedulerpriorityextract.c,
score/src/schedulerpriorityfree.c,
score/src/schedulerpriorityupdate.c: New files.
* score/src/schedulerprioritythreadschedulerallocate.c,
score/src/schedulerprioritythreadschedulerfree.c,
score/src/schedulerprioritythreadschedulerupdate.c: Removed.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* sapi/include/confdefs.h, sapi/include/rtems/config.h,
score/include/rtems/score/scheduler.h,
score/include/rtems/score/schedulerpriority.h,
score/inline/rtems/score/scheduler.inl,
score/inline/rtems/score/schedulerpriority.inl,
score/src/scheduler.c, score/src/schedulerpriority.c,
score/src/schedulerpriorityblock.c,
score/src/schedulerpriorityschedule.c,
score/src/schedulerprioritythreadschedulerallocate.c,
score/src/schedulerprioritythreadschedulerfree.c,
score/src/schedulerprioritythreadschedulerupdate.c,
score/src/schedulerpriorityunblock.c,
score/src/schedulerpriorityyield.c, score/src/threadchangepriority.c,
score/src/threadclearstate.c, score/src/threadclose.c,
score/src/threadinitialize.c, score/src/threadready.c,
score/src/threadresume.c, score/src/threadsetpriority.c,
score/src/threadsetstate.c, score/src/threadsuspend.c: Simplify the
pluggable scheduler interface. Its configuration made a table
of available schedulers and set a pointer to one of the.
This was heavy handed since you can only use one scheduler
in an application. This configuration mechanism resulted in a
scheduler pointer being passed around when you could put all
scheduler configuration in an initialized structure.
|
|
|
|
| |
* sapi/include/confdefs.h: Fix typo.
|
|
|
|
|
|
|
|
|
|
| |
Jennifer Averett <jennifer.averett@oarcorp.com>
Add RTEMS Scheduler Simulator.
* sapi/include/confdefs.h: This adds some simple conditional
logic to disable portions of the configuration that are NOT supported
when configuring an RTEMS instance for use with a Scheduler Simulator
instance.
|
|
|
|
|
|
|
|
|
|
|
|
| |
* sapi/include/confdefs.h, score/include/rtems/score/scheduler.h,
score/inline/rtems/score/scheduler.inl,
score/inline/rtems/score/schedulerpriority.inl,
score/src/schedulerpriority.c,
score/src/schedulerprioritythreadschedulerallocate.c,
score/src/schedulerprioritythreadschedulerfree.c,
score/src/schedulerprioritythreadschedulerupdate.c,
score/src/schedulerpriorityyield.c: Added attribute unused. Renamed
types and fields to follow the Score naming conventions.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
PR 1647/cpukit
* posix/src/nanosleep.c, posix/src/sched_yield.c,
rtems/src/taskwakeafter.c, sapi/include/confdefs.h,
sapi/include/rtems/config.h, sapi/src/exinit.c, score/Makefile.am,
score/preinstall.am, score/include/rtems/score/prioritybitmap.h,
score/include/rtems/score/thread.h,
score/inline/rtems/score/thread.inl, score/src/thread.c,
score/src/threadchangepriority.c, score/src/threadclearstate.c,
score/src/threadclose.c, score/src/threadinitialize.c,
score/src/threadready.c, score/src/threadresume.c,
score/src/threadsetpriority.c, score/src/threadsetstate.c,
score/src/threadsettransient.c, score/src/threadsuspend.c,
score/src/threadtickletimeslice.c: Refactor scheduler out of thread
handler to facilitate alternate scheduler implementations.
* score/src/threadyieldprocessor.c: Removed.
* score/src/schedulerprioritythreadschedulerupdate.c,
score/src/schedulerprioritythreadschedulerfree.c,
score/src/schedulerpriorityblock.c, score/src/scheduler.c,
score/src/schedulerprioritythreadschedulerallocate.c,
score/src/schedulerpriorityunblock.c,
score/src/schedulerpriority.c, score/src/schedulerpriorityyield.c,
score/include/rtems/score/schedulerpriority.h,
score/include/rtems/score/scheduler.h,
score/inline/rtems/score/scheduler.inl,
score/inline/rtems/score/schedulerpriority.inl: New files.
|
|
|
|
|
|
|
| |
PR 1718/cpukit
* sapi/include/confdefs.h: POSIX threads are allocated twice the
minimum stack space by default. confdefs.h only accounts for one
minimum -- not the 2x factor.
|
|
|
|
|
|
| |
* libmisc/stackchk/check.c: Make compile again.
* sapi/src/io.c, score/src/heap.c: Address dead assignment
issues found by clang.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
PR 1673/cpukit
* sapi/src/chainappendnotify.c, sapi/src/chaingetnotify.c,
sapi/src/chaingetwait.c, sapi/src/chainprependnotify.c: New files.
* sapi/Makefile.am: Reflect changes above.
* sapi/include/rtems/chain.h: Declare
rtems_chain_append_with_notification(),
rtems_chain_prepend_with_notification(),
rtems_chain_get_with_notification(), and rtems_chain_get_with_wait().
* sapi/inline/rtems/chain.inl: Define
rtems_chain_append_with_empty_check(),
rtems_chain_prepend_with_empty_check(), and
rtems_chain_get_with_empty_check().
|
|
|
|
| |
* sapi/include/rtems/chain.h: Move extern "C".
|
|
|
|
|
| |
* sapi/include/confdefs.h: Include <rtems.h> to resolve all
dependencies.
|
|
|
|
|
|
| |
PR 1658/cpukit
* sapi/src/exshutdown.c, score/include/rtems/score/interr.h: If the
system is not up, consider it a fatal error.
|
|
|
|
|
| |
* sapi/inline/rtems/chain.inl: Added
rtems_chain_extract_unprotected().
|
|
|
|
|
| |
* sapi/include/confdefs.h: Add configuration macros for Go
requirements.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
PR 1635/cpukit
* sapi/src/exinit.c, score/Makefile.am, score/preinstall.am,
score/include/rtems/score/bitfield.h,
score/include/rtems/score/priority.h,
score/include/rtems/score/thread.h,
score/inline/rtems/score/priority.inl,
score/inline/rtems/score/thread.inl,
score/src/threadchangepriority.c, score/src/threadclearstate.c,
score/src/threadready.c, score/src/threadresume.c,
score/src/threadsetpriority.c, score/src/threadsetstate.c,
score/src/threadsettransient.c, score/src/threadsuspend.c:
Refactoring of priority handling, to isolate the bitmap
implementation of priorities in the supercore so that priority
management is a little more modular. This change is in anticipation
of scheduler implementations that can select how they manage tracking
priority levels / finding the highest priority ready task. Note that
most of the changes here are simple renaming, to clarify the use of
the bitmap-based priority management.
* score/include/rtems/score/prioritybitmap.h,
score/inline/rtems/score/prioritybitmap.inl: New files.
|
|
|
|
| |
* sapi/include/confdefs.h: Spelling.
|
|
|
|
|
| |
* sapi/include/confdefs.h: Do not cover up user configuation mistakes
on filesystems -- cite them as errors.
|
|
|
|
|
| |
* sapi/include/rtems/init.h: Mark rtems_shutdown_executive as a
noreturn method.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* libblock/include/rtems/ide_part_table.h, libblock/src/bdbuf.c,
libcsupport/src/__times.c, libcsupport/src/libio_init.c,
libcsupport/src/mallocfreespace.c, libcsupport/src/mount-mgr.c,
libcsupport/src/mount.c, libcsupport/src/rewinddir.c,
libcsupport/src/seekdir.c, libcsupport/src/telldir.c,
libcsupport/src/unmount.c, libfs/src/dosfs/fat.c,
libfs/src/dosfs/fat_fat_operations.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_fsunmount.c, libfs/src/dosfs/msdos_initsupp.c,
libfs/src/dosfs/msdos_rename.c, libmisc/cpuuse/cpuusagereport.c,
libmisc/shell/vis.c, libmisc/stackchk/check.c, sapi/src/posixapi.c,
telnetd/telnetd.c: Remove include of assert.h when it is not needed.
|
|
|
|
|
|
|
|
| |
* libfs/src/nfsclient/src/nfs.c, libfs/src/nfsclient/src/nfs.c,
libfs/src/nfsclient/src/librtemsNfs.h: Renamed
rtems_nfsfs_initialize() in rtems_nfs_initialize().
* sapi/include/confdefs.h: Reflect changes above. Renamed
*_miniIMFS in *_MINIIMFS. Renamed *_NFSFS in *_NFS.
|
|
|
|
|
|
| |
PR 1581/cpukit
* libcsupport/include/rtems/malloc.h, sapi/include/confdefs.h: Remove
extra * on function pointer declaration.
|
|
|
|
|
| |
* sapi/include/confdefs.h: Add parameters for FIFOs and pipes since
they are distinct to the user.
|
|
|
|
|
| |
* sapi/include/confdefs.h: Add CONFIGURE_MAXIMUM_FIFOS to account for
resources per FIFO instance.
|
|
|
|
| |
* sapi/include/rtems/config.h: Remove ITRON.
|
| |
|
|
|
|
|
| |
* sapi/Makefile.am: Remove src/itronapi.c.
* sapi/src/itronapi.c: Remove.
|
|
|
|
| |
* sapi/include/confdefs.h: Remove ITRON configuration parameters.
|
|
|
|
| |
* sapi/include/confdefs.h: Remove RTEMS_COVERAGE conditionals whi.
|
|
|
|
|
| |
* sapi/include/confdefs.h: Do not define a filesystem if
CONFIGURE_APPLICATION_DISABLE_FILESYSTEM is defined.
|
|
|
|
|
| |
* libcsupport/include/rtems/libio.h, sapi/include/confdefs.h: Added
and use defines for file system types.
|
|
|
|
|
|
|
|
|
|
|
| |
* libfs/src/imfs/fifoimfs_init.c: New file.
* libfs/Makefile.am: Reflect change above.
* libfs/src/imfs/imfs.h, libfs/src/imfs/imfs_eval.c,
libfs/src/imfs/imfs_init.c, libfs/src/imfs/imfs_initsupp.c,
libfs/src/imfs/miniimfs_init.c, libfs/src/pipe/fifo.c,
libfs/src/pipe/pipe.c, libfs/src/pipe/pipe.h: Pipe support is now
link-time optional.
* sapi/include/confdefs.h: Reflect changes above.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* libcsupport/include/rtems/libio_.h: Declare
rtems_filesystem_mount_table_control.
* libcsupport/include/rtems/libio.h: Removed
rtems_filesystem_table_first(), rtems_filesystem_table_next() and
rtems_filesystem_table_node_t declarations. Declare
rtems_per_filesystem_routine, rtems_filesystem_iterate() and
rtems_filesystem_get_mount_handler().
* libcsupport/src/mount.c: Added rtems_filesystem_mounts_first() and
rtems_filesystem_mounts_next(). Simplify mount(). Removed
rtems_filesystem_mount_table_control_init. Use
rtems_filesystem_get_mount_handler().
* libcsupport/src/mount-mgr.c: Removed rtems_filesystem_mounts_first() and
rtems_filesystem_mounts_next(). Added rtems_filesystem_iterate() and
rtems_filesystem_get_mount_handler(). Use rtems_libio_lock() and
rtems_libio_unlock();
* sapi/include/confdefs.h, libmisc/shell/main_mount.c: Update for
mount API changes.
|
|
|
|
|
| |
* sapi/include/confdefs.h: PR 1543. Make default file system when
nothing is defined IMFS not miniIMFS.
|
|
|
|
|
|
| |
* libcsupport/include/rtems/libio.h: Make the struct name the same
as the typedef.
* sapi/include/confdefs.h: Fixes for use in C++.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* libcsupport/Makefile.am: Add mount-mgr.c.
* libcsupport/src/mount-mgr.c: New.
* include/rtems/fs.h: Added rtems_filesystem_location_mount.
* libcsupport/include/rtems/libio.h, libcsupport/src/mount.c: New
mount interface. It is similar to Linux.
* libcsupport/include/rtems/libio_.h: Remove the
init_fs_mount_table call.
* libcsupport/src/base_fs.c: Remove init_fs_mount_table_call. Use
the new mount call. Remove setting the root node in the global
pathloc. Mount does this now.
* libcsupport/src/privateenv.c: Remove the hack to set the root
mount table entry in the environment.
* libcsupport/src/unmount.cL Free the target string.
* libblock/src/bdpart-mount.c: New mount API.
* libfs/src/devfs/devfs.h, libfs/src/devfs/devfs_init.c,
libfs/src/dosfs/dosfs.h, libfs/src/dosfs/msdos.h,
libfs/src/dosfs/msdos_init.c, libfs/src/imfs/imfs.h,
libfs/src/imfs/imfs_eval.c, libfs/src/imfs/imfs_init.c,
libfs/src/imfs/miniimfs_init.c,
libfs/src/nfsclient/src/librtemsNfs.h,
libfs/src/rfs/rtems-rfs-rtems.c, libfs/src/rfs/rtems-rfs.h,
libnetworking/lib/ftpfs.c, libnetworking/rtems/ftpfs.h,
libnetworking/rtems/tftp.h: New mount_h API.
* libfs/src/devfs/devfs_eval.c: Local include of extern ops.
* libfs/src/nfsclient/src/nfs.c: New mount API. Removed the mount
me call and fixed the initialisation to happen when mounting.
* libmisc/Makefile.am, libmisc/shell/shellconfig.h: Remove mount
filesystem files.
* libmisc/fsmount/fsmount.c, libmisc/fsmount/fsmount.h: Updated to
the new mount table values.
* libmisc/shell/main_mount_ftp.c,
libmisc/shell/main_mount_msdos.c, libmisc/shell/main_mount_rfs.c,
libmisc/shell/main_mount_tftp.c: Removed.
* libmisc/shell/main_mount.c: Use the new mount API. Also access
the file system table for the file system types.
* libnetworking/lib/tftpDriver.c: Updated to the new mount
API. Fixed to allow mounting from any mount point. Also can now
have more than file system mounted.
* sapi/include/confdefs.h: Add file system configuration support.
|
|
|
|
|
|
|
| |
* sapi/include/confdefs.h: New define CONFIGURE_SEMAPHORES for the
overall count of required semaphores. New define
CONFIGURE_LIBBLOCK_SEMAPHORES for the count of required disk and bdbuf
semaphores.
|
|
|
|
| |
* sapi/inline/rtems/chain.inl: Added missing functions.
|
|
|
|
|
|
| |
* libblock/src/ramdisk-config.c, sapi/include/confdefs.h:
CONFIGURE_DISABLE_CLASSIC_NOTEPADS is typo of
CONFIGURE_DISABLE_CLASSIC_API_NOTEPADS. Fix it.
|
|
|
|
| |
_User_extensions_Add_API_set
|
| |
|
| |
|
|
|
|
| |
* sapi/src/fatal.c: Formatting.
|
|
|
|
|
|
|
|
| |
* sapi/include/rtems/config.h: Fixed typos (wrong case) in macro
expansion for
rtems_configuration_get_device_driver_table()
and
rtems_configuration_get_user_extension_table()
|