Commit Graph

41 Commits

Author SHA1 Message Date
Ralf Corsépius
fd7161017b Cleanup Krzysztof's copyright notices. 2012-10-11 18:25:03 +02:00
Krzysztof Mięsowicz
a6eaa5489c timespec helpers: Add wrappers with new test 2012-08-29 07:38:54 -05:00
Joel Sherrill
9b4422a251 Remove All CVS Id Strings Possible Using a Script
Script does what is expected and tries to do it as
smartly as possible.

+ remove occurrences of two blank comment lines
  next to each other after Id string line removed.
+ remove entire comment blocks which only exited to
  contain CVS Ids
+ If the processing left a blank line at the top of
  a file, it was removed.
2012-05-11 08:44:13 -05:00
Gedare Bloom
f53aa8d302 rbtree: API changes. Remove rbtree control node from RBTree_Next.
The implementation of RBTree_Next was using an awkward construction to detect
and avoid accessing the false root of the red-black tree. To deal with the
false root, RBTree_Next was comparing node parents with the control node.
Instead the false root can be detected by checking if the grandparent of a
node exists; the grandparent of the tree's true root is NULL by definition
so the root of the tree is found while walking up the tree by checking for
the non-existence of a grandparent.

This change propagates into the predecessor/successor and iterate functions.
2012-05-08 18:40:44 -04:00
Gedare Bloom
857275285f rbtree: API Changes
Make default for rtems_rbtree functions be unprotected (preemption enabled)
unless an unprotected variant e.g. rtems_rbtree_xxx_unprotected is available.
2012-05-08 18:40:44 -04:00
Sebastian Huber
8c6608bd1b rbtree: PR2046: Replace rtems_rbtree_unique 2012-04-13 09:14:18 +02:00
Sebastian Huber
dc62a48cc5 rbtree: PR1995: API change
New functions
  o _RBTree_Next_unprotected(),
  o _RBTree_Next(),
  o _RBTree_Successor_unprotected(),
  o _RBTree_Predecessor_unprotected(),
  o rtems_rbtree_successor_unprotected(), and
  o rtems_rbtree_predecessor_unprotected().

Change prototype of
  o _RBTree_Successor(),
  o _RBTree_Predecessor(),
  o rtems_rbtree_successor(), and
  o rtems_rbtree_predecessor().
2012-04-11 11:24:18 +02:00
Sebastian Huber
9fc284cfde score/rbtree: Add const qualifier 2012-03-30 11:40:31 +02:00
Sebastian Huber
72a3af3e42 Extended API to support iteration of const chains. 2012-02-02 11:09:30 +01:00
Joel Sherrill
82db8e5675 2011-09-15 Petr Benes <benesp16@fel.cvut.cz>
PR 1906/cpukit
	* sapi/Makefile.am, sapi/preinstall.am, sapi/include/confdefs.h,
	score/Makefile.am, score/preinstall.am: Add the CBS (Constant
	Bandwidth Server) scheduler. This is a complex scheduling policy
	built atop of the EDF scheduler. Unlike other schedulers, this one
	provides a user API and handles not only deadlines of tasks but also
	claimed budget per period. The main aim of the scheduler is isolation
	of tasks so that each task is guaranteed to meet all deadlines
	regardless of how other tasks behave.
	* sapi/include/rtems/cbs.h, sapi/inline/rtems/cbs.inl,
	score/include/rtems/score/schedulercbs.h, score/src/schedulercbs.c,
	score/src/schedulercbsattachthread.c,
	score/src/schedulercbscleanup.c,
	score/src/schedulercbscreateserver.c,
	score/src/schedulercbsdestroyserver.c,
	score/src/schedulercbsdetachthread.c,
	score/src/schedulercbsgetapprovedbudget.c,
	score/src/schedulercbsgetexecutiontime.c,
	score/src/schedulercbsgetparameters.c,
	score/src/schedulercbsgetremainingbudget.c,
	score/src/schedulercbsgetserverid.c,
	score/src/schedulercbsreleasejob.c,
	score/src/schedulercbssetparameters.c,
	score/src/schedulercbsunblock.c: New files.
2011-09-15 15:49:32 +00:00
Joel Sherrill
74f1c73e96 2011-08-21 Petr Benes <benesp16@fel.cvut.cz>
PR 1886/cpukit
	* sapi/include/rtems/rbtree.h, sapi/inline/rtems/rbtree.inl,
	score/include/rtems/score/rbtree.h,
	score/inline/rtems/score/rbtree.inl, score/src/rbtree.c,
	score/src/rbtreeinsert.c: This patch enables inserting duplicate keys
	into rbtree. It is possible to turn on this feature when initializing
	the tree.
2011-08-21 20:07:11 +00:00
Joel Sherrill
13c4f853e6 2011-08-02 Joel Sherrill <joel.sherrill@oarcorp.com>
PR 1877/cpukit
	* libfs/src/imfs/imfs_mknod.c, libfs/src/imfs/memfile.c,
	sapi/inline/rtems/rbtree.inl, score/include/rtems/score/rbtree.h,
	score/inline/rtems/score/rbtree.inl, score/src/rbtree.c,
	score/src/rbtreefind.c, score/src/rbtreeinsert.c: Add comparison
	function for RBTrees.
2011-08-02 19:25:59 +00:00
Joel Sherrill
bd9baa8184 2010-07-28 Gedare Bloom <giddyup44@yahoo.com>
PR 1641/cpukit
	* sapi/Makefile.am, sapi/preinstall.am, score/Makefile.am,
	score/preinstall.am: Add Red Black Tree data structure to score.
	* sapi/include/rtems/rbtree.h, sapi/inline/rtems/rbtree.inl,
	score/include/rtems/score/rbtree.h, score/inline/rtems/score/rbtree.inl,
	score/src/rbtree.c, score/src/rbtreeextract.c,
	score/src/rbtreefind.c, score/src/rbtreefindheader.c,
	score/src/rbtreeget.c, score/src/rbtreeinsert.c,
	score/src/rbtreepeek.c: New files.
2011-04-04 18:44:16 +00:00
Sebastian Huber
69f2a078c8 2010-08-24 Sebastian Huber <sebastian.huber@embedded-brains.de>
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().
2010-08-24 14:29:55 +00:00
Sebastian Huber
b8af65a8f1 2010-08-09 Sebastian Huber <sebastian.huber@embedded-brains.de>
* sapi/inline/rtems/chain.inl: Added
	rtems_chain_extract_unprotected().
2010-08-09 07:38:51 +00:00
Sebastian Huber
57b5d149ed 2010-04-30 Sebastian Huber <sebastian.huber@embedded-brains.de>
* sapi/inline/rtems/chain.inl: Added missing functions.
2010-04-30 08:39:15 +00:00
Chris Johns
eb649786c8 2009-10-08 Chris Johns <chrisj@rtems.org>
* Makefile.am, preinstall.am: Added statvfs.h.
        * libcsupport/Makefile.am: Add statvfs.c.
        * libcsupport/include/sys/statvfs.h, libcsupport/src/statvfs.c:
        New.
        * libcsupport/include/rtems/libio.h: Add a file system handler for
        the statvfs call.
        * libfs/src/devfs/devfs_init.c, libfs/src/dosfs/msdos_init.c,
        libfs/src/imfs/imfs_init.c, libfs/src/nfsclient/src/nfs.c: Set the
        statvfs handler to NULL.
        * include/rtems/fs.h: Add a second node access field for the RFS
        file system to hold a directory offset while the existing field
        holds the inode number. This save a rescan of the directory when
        working with directories.
        * libblock/include/rtems/bdbuf.h: Added references and user fields
        to the buffer descriptor.
        * libblock/src/bdbuf.c: Added dynamic buffer support for different
        block sizes. Fixed a number of bugs.
        * libblock/src/blkdev.c: Release the disk device on an error.
        * libblock/src/diskdevs.c: Set the block size to the media block
        size during initialisation of the disk device.
        * libblock/src/flashdisk.c, libblock/src/nvdisk.c,
        libblock/src/ramdisk.c: Updated the drivers to handle variable
        block sizes.
        * libfs/src/dosfs/fat.c, libfs/src/dosfs/fat.h: Release any
        buffers when an error occurs. The FAT buffer layer hangs onto a
        single buffer while mounted. This should be fixed.
        * sapi/inline/rtems/chain.inl: Added rtems_chain_set_off_chain,
        rtems_chain_is_node_off_chain, and rtems_chain_previous.
        * score/inline/rtems/score/chain.inl: Added _Chain_Set_off_chain,
        and _Chain_Is_node_off_chain.
        * libmisc/shell/main_ln.c, libmisc/shell/main_mknod.c,
        libmisc/shell/mknod-pack_dev.c, libmisc/shell/mknod-pack_dev.h:
        New shell commands.
        * libmisc/Makefile.am, libmisc/shell/shellconfig.h: Added ln and
        mknod commands.
        * libmisc/shell/hexdump-display.c: Fixed the reopen bug which
        showed up as a free with a bad pointer.
        * libmisc/shell/main_mount.c: List the user adding file system
        when listing the available file systems to mount.
        * libmisc/shell/utils-cp.c: Remove the fixed static copy buffer
        and use a large dynamic buffer.
        * score/inline/rtems/score/address.inl, score/src/coremsgsubmit.c,
        score/src/objectallocate.c, score/src/objectfree.c: Remove
        warnings.
2009-10-08 07:07:36 +00:00
Joel Sherrill
c42d1a459b 2009-09-25 Sebastian Huber <Sebastian.Huber@embedded-brains.de>
* sapi/include/rtems/extension.h, sapi/src/extensiondelete.c,
	sapi/src/extensionident.c, sapi/src/extensioncreate.c,
	sapi/inline/rtems/extension.inl, score/include/rtems/score/userext.h,
	score/src/userextthreaddelete.c, score/src/userext.c,
	score/src/userextthreadcreate.c, score/src/userextremoveset.c,
	score/src/userextthreadbegin.c, score/src/userextaddset.c,
	score/src/userextthreadstart.c, score/src/userextthreadswitch.c,
	score/src/userextthreadrestart.c: Documentation. The types
	User_extensions_routine and rtems_extension are now deprecated.
	Removed unused types User_extensions_thread_post_switch_extension and
	rtems_task_post_switch_extension. Renamed _User_extensions_Add_API_set()
	in _User_extensions_Add_set(). Renamed _User_extensions_Add_set() in
	_User_extensions_Add_set_with_table().
	* score/src/userextaddapiset.c: Removed file.
	* score/Makefile.am: Update.
2009-09-25 17:51:46 +00:00
Chris Johns
0d15414ed6 009-08-05 Chris Johns <chrisj@rtems.org>
* libmisc/dummy/dummy-networking.c: New.
        * libmisc/dummy/dummy.c, libmisc/Makefile.am: Move
        trhe networking configuration into a separate file so
        configuration varations do not cause conflicts.
        * score/inline/rtems/score/object.inl,
        score/include/rtems/score/object.h: Remove warnings.
        * score/inline/rtems/score/object.inl: Add _Chain_First,
        _Chain_Last, _Chain_Mext, and _Chain_Previous.
        * sapi/inline/rtems/chain.inl: Add rtems_chain_first,
        rtems_chain_last, rtems_chain_mext, and rtems_chain_previous.
        * libblock/include/rtems/diskdevs.h: Remove the bdbuf pool id and
        block_size_log2. Add media_block_size.
        * libblock/src/diskdevs.c: Remove size restrictions on block
        size. Add media block size initialisation. Remove comment to clean
        up the bdbuf cache.
        * libblock/src/blkdev.c: Remove references to
        block_size_log2. Allow any block size.
        * libblock/include/rtems/bdbuf.h, libblock/src/bdbuf.c: Remove all
        references to pools and make the cache handle demand driver
        variable buffer size allocation. Added worker threads support the
        swapout task.
        * sapi/include/confdefs.h: Updated the bdbuf configutation.
2009-08-05 00:00:54 +00:00
Joel Sherrill
db03bcc17c 2008-11-20 Joel Sherrill <joel.sherrill@oarcorp.com>
PR 1340/cpukit
	* sapi/inline/rtems/chain.inl: Add rtems_chain_initialize to public
	chain API.
2008-11-20 21:12:59 +00:00
Joel Sherrill
00151313e7 2008-11-13 Joel Sherrill <joel.sherrill@OARcorp.com>
PR 1336/cpukit
	* sapi/inline/rtems/chain.inl: Add rtems_chain_prepend_unprotected and
	rtems_chain_append_unprotected.
2008-11-13 15:10:43 +00:00
Ralf Corsepius
484a76996e Convert to "bool". 2008-09-04 17:46:39 +00:00
Ralf Corsepius
ef49476f5a Add header guard to force indirect inclusion. 2008-08-19 08:32:59 +00:00
Chris Johns
72d2ec4da4 2008-07-03 Chris Johns <chrisj@rtems.org>
* cpukit/libcsupport/include/chain.h: Removed. Use the SAPI
	interface that is supported.

	* cpukit/libcsupport/Makefile.am,
	cpukit/libcsupport/preinstall.am: Remove chain.h header
	references.

	* cpukit/sapi/include/rtems/chain.h,
	cpukit/sapi/inline/rtems/chain.inl: New. A supported chains
	interface.

	* cpukit/sapi/Makefile.am, cpukit/sapi/preinstall.am: Updated to
	include the new chains interface.

	* cpukit/libfs/src/imfs/imfs.h,
	cpukit/libfs/src/imfs/imfs_creat.c,
	cpukit/libfs/src/imfs/imfs_debug.c,
	cpukit/libfs/src/imfs/imfs_directory.c,
	cpukit/libfs/src/imfs/imfs_fsunmount.c,
	cpukit/libfs/src/imfs/imfs_getchild.c,
	cpukit/libfs/src/imfs/imfs_load_tar.c,
	cpukit/libfs/src/imfs/imfs_rmnod.c,
	cpukit/libfs/src/imfs/memfile.c,
	cpukit/libfs/src/nfsclient/src/nfs.c,
	cpukit/libcsupport/include/rtems/libio.h,
	cpukit/libcsupport/src/malloc_deferred.c,
	cpukit/libcsupport/src/mount.c,
	cpukit/libcsupport/src/privateenv.c,
	cpukit/libcsupport/src/unmount.c: Change to the new chains
	interface.

	* cpukit/libcsupport/src/malloc_boundary.c: Remove warning.
2008-07-03 01:37:38 +00:00
Ralf Corsepius
b96254f8dd Add doxygen preamble. 2004-11-21 07:42:11 +00:00
Joel Sherrill
2ba508b631 2003-09-04 Joel Sherrill <joel@OARcorp.com>
* include/confdefs.h, include/rtems/config.h,
	include/rtems/extension.h, include/rtems/fatal.h,
	include/rtems/init.h, include/rtems/io.h, include/rtems/mptables.h,
	include/rtems/sptables.h, include/rtems/sptables.h.in,
	inline/rtems/extension.inl, macros/rtems/extension.inl, src/debug.c,
	src/exinit.c, src/extension.c, src/extensioncreate.c,
	src/extensiondelete.c, src/extensionident.c, src/fatal.c, src/io.c,
	src/itronapi.c, src/posixapi.c, src/rtemsapi.c: URL for license
	changed.
2003-09-04 18:54:35 +00:00
Ralf Corsepius
d2c26e4bad Merger from rtems-4-6-branch. 2003-03-11 08:10:00 +00:00
Ralf Corsepius
f117cafc8a 2002-12-09 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* include/Makefile.am: Remove.
	* inline/Makefile.am: Remove.
	* macros/Makefile.am: Remove.
	* src/Makefile.am: Remove.
	* Makefile.am: Merge-in removed Makefile.ams.
2002-12-09 07:29:18 +00:00
Ralf Corsepius
fed6210d43 2002-06-17 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* Include $(top_srcdir)/automake/*.am.
2002-06-17 09:27:44 +00:00
Joel Sherrill
ef7ceb4f5e 2002-03-27 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* Makefile.am: Remove AUTOMAKE_OPTIONS.
	* include/Makefile.am: Remove AUTOMAKE_OPTIONS.
	* inline/Makefile.am: Remove AUTOMAKE_OPTIONS.
	* macros/Makefile.am: Remove AUTOMAKE_OPTIONS.
	* src/Makefile.am: Remove AUTOMAKE_OPTIONS.
2002-03-28 00:45:40 +00:00
Joel Sherrill
a11e5d35cd 2001-10-16 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* include/rtems/Makefile.am: Remove.
	* include/Makefile.am: Handle subdirs, require automake-1.5.
	* inline/rtems/Makefile.am: Remove.
	* inline/Makefile.am: Handle subdirs, require automake-1.5.
	* macros/rtems/Makefile.am: Remove.
	* Makefile.am: require automake-1.5.
2001-10-16 13:31:15 +00:00
Joel Sherrill
bf85b19188 Patch rtems-rc-4.5.0-13-cvs.diff from Ralf Corsepius <corsepiu@faw.uni-ulm.de>.
adds .cvsignore.
2000-04-13 14:37:14 +00:00
Joel Sherrill
08311cc3a9 Updated copyright notice. 1999-11-17 17:51:34 +00:00
Joel Sherrill
811804fec8 Patch from Ralf Corsepius <corsepiu@faw.uni-ulm.de> to make fix bug
where wrapup left pieces out of the librtemsall.a.
1999-10-04 19:15:14 +00:00
Joel Sherrill
e1d8abbe28 Applied patch rtems-rc-19990820-6.diff.gz from
Ralf Corsepius <corsepiu@faw.uni-ulm.de> which converted many
Makefile.in's to Makefile.am's.  This added a lot of files.
1999-09-07 13:45:03 +00:00
Joel Sherrill
60b791ada1 updated copyright to 1998 1998-02-17 23:46:28 +00:00
Joel Sherrill
98e4ebf594 Fixed typo in the pointer to the license terms. 1997-10-08 15:45:54 +00:00
Joel Sherrill
03f2154e51 headers updated to reflect new style copyright notice as part
of switching to the modified GNU GPL.
1997-04-22 17:20:27 +00:00
Joel Sherrill
503dc05890 switched from "STATIC INLINE" to "RTEMS_INLINE_ROUTINE" 1996-07-03 14:20:03 +00:00
Joel Sherrill
1a8fde6ca2 Removed prototyes for static inline routines and moved the comments into
the inline implementation.   The impetus for this was twofold.  First,
it is incorrect to have static inline prototypes when using the macro
implementation.  Second, this reduced the number of lines in the include
files seen by rtems.h by about 2000 lines.

Next we restricted visibility for the inline routines to inside the
executive itself EXCEPT for a handful of objects.  This reduced the
number of include files included by rtems.h by 40 files and reduced
the lines in the include files seen by rtems.h by about 6000 lines.

In total, these reduced the compile time of the entire RTEMS tree by 20%.
This results in about 8 minutes savings on the SparcStation 10 morgana.
1996-03-06 21:34:57 +00:00
Joel Sherrill
ac7d5ef06a Initial revision 1995-05-11 17:39:37 +00:00