summaryrefslogtreecommitdiffstats
path: root/cpukit (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Filesystem: Reference counting for locationsSebastian Huber2012-03-13166-7519/+6155
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | o A new data structure rtems_filesystem_global_location_t was introduced to be used for o the mount point location in the mount table entry, o the file system root location in the mount table entry, o the root directory location in the user environment, and o the current directory location in the user environment. During the path evaluation global start locations are obtained to ensure that the current file system instance will be not unmounted in the meantime. o The user environment uses now reference counting and is protected from concurrent access. o The path evaluation process was completely rewritten and simplified. The IMFS, RFS, NFS, and DOSFS use now a generic path evaluation method. Recursive calls in the path evaluation have been replaced with iteration to avoid stack overflows. Only the evaluation of symbolic links is recursive. No dynamic memory allocations and intermediate buffers are used in the high level path evaluation. No global locks are held during the file system instance specific path evaluation process. o Recursive symbolic link evaluation is now limited by RTEMS_FILESYSTEM_SYMLOOP_MAX. Applications can retrieve this value via sysconf(). o The device file system (devFS) uses now no global variables and allocation from the workspace. Node names are allocated from the heap. o The upper layer lseek() performs now some parameter checks. o The upper layer ftruncate() performs now some parameter checks. o unmask() is now restricted to the RWX flags and protected from concurrent access. o The fchmod_h and rmnod_h file system node handlers are now a file system operation. o The unlink_h operation has been removed. All nodes are now destroyed with the rmnod_h operation. o New lock_h, unlock_h, clonenod_h, and are_nodes_equal_h file system operations. o The path evaluation and file system operations are now protected by per file system instance lock and unlock operations. o Fix and test file descriptor duplicate in fcntl(). o New test fstests/fsnofs01.
* score: Add _RBTree_Opposite_direction.Gedare Bloom2012-03-042-8/+18
| | | | | Add a red-black tree helper method to ease obtaining the direction opposite to the current direction. Useful for manipulating and traversing an rbtree.
* 2012-03-02 Ralf Corsépius <ralf.corsepius@rtems.org>Ralf Corsépius2012-03-022-182/+193
| | | | | * libnetworking/resolv.h: Partial sync with FreeBSD. Add decls for res_send_setqhook, res_send_setrhook.
* 2012-03-02 Ralf Corsépius <ralf.corsepius@rtems.org>Ralf Corsépius2012-03-023-1/+11
| | | | | | * configure.ac: Check for rcmd in unistd.h. * libnetworking/libc/rcmd.c: Build iff rcmd is declared in unistd.h. Change rcmd's decl to match with Linux/FreeBSD's decl.
* PR 2026/filesystem - Fix semaphore attributesSebastian Huber2012-02-231-7/+2
| | | | | Semaphores of type RTEMS_SIMPLE_BINARY_SEMAPHORE are not suitable for a mutex. Use RTEMS_BINARY_SEMAPHORE with RTEMS_INHERIT_PRIORITY instead.
* 2012-02-22 Ralf Corsépius <ralf.corsepius@rtems.org>Ralf Corsépius2012-02-221-0/+2
| | | | | * libcsupport/src/assocnamebad.c: Add #define INSIDE_ASSOC.
* 2012-02-22 Ralf Corsépius <ralf.corsepius@rtems.org>Ralf Corsépius2012-02-221-0/+1
| | | | | * sapi/include/confdefs.h: Add decl of configuration_mount_table (Fix c++ mangling).
* Add functions for greedy workspace allocationSebastian Huber2012-02-173-0/+57
| | | | | | | Various tests must check program paths that result due to failed memory allocations from the workspace. To avoid tinkering with internal workspace structures throughout the test code these functions should be used.
* Fixed incorrect error pathSebastian Huber2012-02-151-2/+0
| | | | The inet_aton() function returns non-zero in case of success.
* Avoid buffer overflow and misaligned memory accessSebastian Huber2012-02-141-14/+24
|
* Avoid NULL pointer accessSebastian Huber2012-02-131-3/+5
|
* Support Thumb 2.Sebastian Huber2012-02-111-1/+4
|
* ARMv7-M NVIC and MPU API changes.Sebastian Huber2012-02-113-12/+248
|
* ARMv7-M Systick API changeSebastian Huber2012-02-111-1/+1
|
* Added support functions for greedy heap allocationSebastian Huber2012-02-106-2/+144
| | | | | | Various tests must check program paths that result due to failed memory allocations from the heap. To avoid tinkering with internal heap structures throughout the test code these functions should be used.
* Moved empty test in front of busy testsSebastian Huber2012-02-101-10/+10
|
* Check that the file offset is valid after a seekSebastian Huber2012-02-092-14/+8
|
* POSIX conformanceSebastian Huber2012-02-081-1/+2
| | | | | For symbolic links, the length in bytes of the pathname contained in the symbolic link should be returned in st_size.
* Fixed typo (setegid.c was missing)Sebastian Huber2012-02-081-1/+1
|
* PR 2001/shell - medit command argument parsing correctionJoel Sherrill2012-02-031-3/+1
| | | | | | | | | | | "medit" overran the argument list, choking on the NULL pointer following the last argument. Note that "medit" still only does byte-sized accesses, which limits its usefulness on most systems. Author: Werner Almesberger <werner@almesberger.net> Signed-off-by: Sebastien Bourdeauducq <sebastien@milkymist.org>
* PR 1991/cpukit - attr.c (really mode code) warning reworkJoel Sherrill2012-02-023-8/+33
| | | | | | | | | | | | | | This PR was about a warning for no previous prototype for rtems_interrupt_level_attribute. This method exists (like a few others) to have real bodies for Classic API services implemented as macros. These macros are not available from anything but C and C++. The most explicit use was in the Ada binding but these would be needed from assembly language or any other non-C based language. On top of needing a prototype, the methods were misnamed. They were related to modes. This renames them, moves the file, fixes test code, etc.
* PR 2012 - mdump/wdump shell cmds handle length arg incorrectly; add ldump cmdJoel Sherrill2012-02-024-134/+168
| | | | | | | | | | | | | * libmisc/shell/main_mdump.c: Reworked to fix bugs in handling of the length argument and to provide an "ldump" command. This file now also supports the "wdump" command. In addition, an RTEMS API function called rtems_mdump() is provided to allow easy dumping from application code. * libmisc/shell/main_mwdump.c: Obsolete file. * libmisc/Makefile.am: Removed main_mwdump.c * libmisc/shell/shellconfig.h: Added "ldump" command. * shell/memory.t: Added documentation for the "ldump" command Signed-off-by: Ric Claus <claus@SLAC.Stanford.edu>
* PR 1998/networking - Move ftpd root initializationJoel Sherrill2012-02-021-9/+7
| | | | | From: Xiangfu <xiangfu@sharism.cc> Signed-off-by: Xiangfu <xiangfu@sharism.cc>
* Removed fpathconf file system node handler.Sebastian Huber2012-02-0220-72/+1
| | | | There existed no calling function for this handler.
* Merge remote branch 'remotes/origin/gitignore'Joel Sherrill2012-02-0242-104/+0
|\
| * Remove all .cvsignore files.Joel Sherrill2012-02-0142-104/+0
| |
* | Extended API to support iteration of const chains.Sebastian Huber2012-02-022-10/+132
|/
* Revert "Google C++ Testing Framework 1.6.0."Sebastian Huber2012-01-2636-29047/+0
| | | | This reverts commit 9bf3a868655f260c2fa6cbcab16f0218cf53e5b8.
* Google C++ Testing Framework 1.6.0.Sebastian Huber2012-01-2336-0/+29047
|
* Update due to API changes.Sebastian Huber2012-01-231-1/+1
|
* 2011-12-14 Sebastian Huber <sebastian.huber@embedded-brains.de>Sebastian Huber2011-12-146-58/+113
| | | | | | | | | | | | PR 1924/cpukit * sapi/include/rtems/config.h: Added stack_allocate_init_hook to rtems_configuration_table. * sapi/include/confdefs.h: Added CONFIGURE_TASK_STACK_FROM_ALLOCATOR and CONFIGURE_TASK_STACK_ALLOCATOR_INIT defines. Set default stack allocator and free hook to _Workspace_Allocate() and _Workspace_Free() respectively. * score/src/thread.c, score/src/threadstackallocate.c, score/src/threadstackfree.c: Update due to API changes.
* 2011-12-14 Sebastian Huber <sebastian.huber@embedded-brains.de>Sebastian Huber2011-12-142-1/+5
| | | | * libcsupport/src/termios_setinitialbaud.c: Fixed typo.
* 2011-12-14 Sebastian Huber <sebastian.huber@embedded-brains.de>Sebastian Huber2011-12-146-55/+70
| | | | | | | | | * libcsupport/include/rtems/termiostypes.h, libcsupport/src/termios_baud2num.c, libcsupport/src/termios_baudtable.c, libcsupport/src/termios_num2baud.c, libcsupport/src/termios_setinitialbaud.c: Added const qualifier to baud associations. Fixed integer types.
* 2011-12-13 Sebastian Huber <sebastian.huber@embedded-brains.de>Sebastian Huber2011-12-132-12/+20
| | | | * sapi/include/confdefs.h: Fixed workspace size estimate of tasks.
* 2011-12-13 Sebastian Huber <sebastian.huber@embedded-brains.de>Sebastian Huber2011-12-1319-212/+196
| | | | | | | | | | | | | | | | | | | | | | * posix/src/mqueuenametoid.c, posix/src/semaphorenametoid.c: Removed files. * posix/src/psxnametoid.c: New file. * posix/Makefile.am: Reflect changes above. * posix/include/rtems/posix/config.h: Fixed integer types. * posix/include/rtems/posix/posixapi.h: Declare _POSIX_Name_to_id(). * posix/include/rtems/posix/mqueue.h, posix/inline/rtems/posix/mqueue.inl: Changed parameter of _POSIX_Message_queue_Create_support(). _POSIX_Message_queue_Name_to_id() is now inline. * posix/include/rtems/posix/semaphore.h, posix/inline/rtems/posix/semaphore.inl: Changed parameter of _POSIX_Semaphore_Create_support(). _POSIX_Semaphore_Name_to_id() is now inline. * posix/src/mqueuecreatesupp.c, posix/src/semaphorecreatesupp.c: Use _Workspace_String_duplicate(). * posix/src/mqueuesendsupp.c, posix/src/mqueueopen.c, posix/src/mqueueunlink.c, posix/src/seminit.c, posix/src/semopen.c, posix/src/semunlink.c: Update due to API changes.
* 2011-12-13 Sebastian Huber <sebastian.huber@embedded-brains.de>Sebastian Huber2011-12-132-7/+10
| | | | | * sapi/include/confdefs.h: Fixed workspace size estimate of POSIX keys and message queues.
* 2011-12-13 Sebastian Huber <sebastian.huber@embedded-brains.de>Sebastian Huber2011-12-133-10/+11
| | | | | * score/include/rtems/score/wkspace.h, score/src/wkstringduplicate.c: Changed parameter of _Workspace_String_duplicate() to avoid strnlen().
* 2011-12-13 Ralf Corsépius <ralf.corsepius@rtems.org>Ralf Corsepius2011-12-133-0/+13
| | | | | | * configure.ac: Check for getrusage.h decl. * libcsupport/src/getrusage.c: Apply HAVE_DECL_GETRUSAGE (Missing prototypes).
* 2011-12-12 Sebastian Huber <sebastian.huber@embedded-brains.de>Sebastian Huber2011-12-124-1/+64
| | | | | | | * score/src/wkstringduplicate.c: New file. * score/Makefile.am: Reflect change above. * score/include/rtems/score/wkspace.h: Declare _Workspace_String_duplicate().
* 2011-12-10 Ralf Corsépius <ralf.corsepius@rtems.org>Ralf Corsepius2011-12-102-3/+7
| | | | | * posix/src/fork.c: Include <unistd.h> for "fork" prototype. Don't include <sys/types.h> (unnecessary).
* 2011-12-10 Ralf Corsépius <ralf.corsepius@rtems.org>Ralf Corsepius2011-12-102-1/+6
| | | | | PR 1985/cpukit * telnetd/Makefile.am: Remove icmds.c.
* 2011-12-10 Ralf Corsépius <ralf.corsepius@rtems.org>Ralf Corsepius2011-12-102-1/+12
| | | | | | PR 1986/libcpu * rtems/include/rtems/rtems/cache.h: Add rtems_cache_aligned_malloc decl.
* 2011-12-10 Ralf Corsépius <ralf.corsepius@rtems.org>Ralf Corsepius2011-12-102-1/+5
| | | | * posix/src/sigtimedwait.c: Make _POSIX_signals_Get_lowest static.
* 2011-12-09 Joel Sherrill <joel.sherrill@oarcorp.com>Joel Sherrill2011-12-092-64/+6
| | | | | | PR 1985/cpukit * telnetd/icmds.c: Removed. All functionality is in shell. Obsolete and unreferenced.
* 2011-12-09 Ralf Corsépius <ralf.corsepius@rtems.org>Ralf Corsepius2011-12-092-1/+5
| | | | * cpu.c: Make _defaultExcHandler static.
* 2011-12-09 Jennifer AverettJennifer Averett2011-12-092-1/+5
| | | | * cpu.c: Correct typo.
* 2011-12-09 Ralf Corsépius <ralf.corsepius@rtems.org>Ralf Corsepius2011-12-093-2/+9
| | | | | | | * libblock/src/flashdisk.c: Make rtems_fdisk_crc16_gen_factors static. * libblock/src/nvdisk.c: Make rtems_nvdisk_crc16_gen_factors static.
* 2011-12-09 Ralf Corsépius <ralf.corsepius@rtems.org>Ralf Corsepius2011-12-092-0/+3
| | | | | * rtems/src/rtemsobjectsetname.c: Include <rtems/rtems/object.h> (Missing prototype).
* 2011-12-09 Ralf Corsépius <ralf.corsepius@rtems.org>Ralf Corsepius2011-12-092-0/+6
| | | | | * rtems/src/rtemsobjectgetclassicname.c: Include <rtems/rtems/object.h> (Missing prototype).
* 2011-12-09 Chris Johns <chrisj@rtems.org>Chris Johns2011-12-094-31/+83
| | | | | | | | | | PR 1968/filesystem * libfs/src/rfs/rtems-rfs-file.c: Fix to the seek bug where a seek to 0 after reading the end of the file did not point to the correct block. * libfs/src/rfs/rtems-rfs-rtems.h, libfs/src/rfs/rtems-rfs-trace.c: Fix the trace flags. Used to fix the bug.