summaryrefslogtreecommitdiffstats
path: root/cpukit/libcsupport/src (follow)
Commit message (Collapse)AuthorAgeFilesLines
* score: Simplify thread control initializationSebastian Huber2014-04-151-24/+2
| | | | | | | | | | | The thread control block contains fields that point to application configuration dependent memory areas, like the scheduler information, the API control blocks, the user extension context table, the RTEMS notepads and the Newlib re-entrancy support. Account for these areas in the configuration and avoid extra workspace allocations for these areas. This helps also to avoid heap fragementation and reduces the per thread memory due to a reduced heap allocation overhead.
* privateenv.c: Remove unused variable warningJoel Sherrill2014-04-041-1/+0
|
* score: PR2152: Use allocator mutex for objectsSebastian Huber2014-03-311-17/+7
| | | | | Use allocator mutex for objects allocate/free. This prevents that the thread dispatch latency depends on the workspace/heap fragmentation.
* score: Thread life cycle re-implementationSebastian Huber2014-03-312-6/+12
| | | | | | | | | | | | | | | | | | | The thread deletion is now supported on SMP. This change fixes the following PRs: PR1814: SMP race condition between stack free and dispatch PR2035: psxcancel reveals NULL pointer access in _Thread_queue_Extract() The POSIX cleanup handler are now called in the right context (should be called in the context of the terminating thread). http://pubs.opengroup.org/onlinepubs/009695399/functions/xsh_chap02_09.html Add a user extension the reflects a thread termination event. This is used to reclaim the Newlib reentrancy structure (may use file operations), the POSIX cleanup handlers and the POSIX key destructors.
* privateenv: Use POSIX keys instead of task variables.Christian Mauderer2014-03-273-19/+32
|
* privateenv: Remove sharing of user environment between threads.Christian Mauderer2014-03-271-56/+4
|
* libcsupport: Use POSIX keys for GXX key functionsChristian Mauderer2014-03-241-60/+52
| | | | | With this patch C++ applications now eventually need additional POSIX-keys and POSIX-key-value-pairs configured.
* libcsupport: Remove unused gxx-wrapper function.Christian Mauderer2014-03-241-10/+0
| | | | The rtems_gxx_key_dtor function is not longer used by gcc.
* score: Unify pthread and gxx_wrapper once and move to score.Christian Mauderer2014-03-211-13/+2
|
* Change all references of rtems.com to rtems.org.Chris Johns2014-03-21142-142/+142
|
* score: Add SMP lock profiling supportSebastian Huber2014-03-142-2/+2
|
* score: Add function to destroy SMP locksSebastian Huber2014-03-111-0/+1
|
* score: Add local context to SMP lock APISebastian Huber2014-03-111-27/+27
| | | | | | | | | | | Add a local context structure to the SMP lock API for acquire and release pairs. This context can be used to store the ISR level and profiling information. It may be later used to enable more sophisticated lock algorithms, e.g. MCS locks. There is only one lock that cannot be used with a local context. This is the per-CPU lock since here we would have to transfer the local context through a context switch which is very complicated.
* printk: Add support for long longSebastian Huber2014-03-111-30/+55
|
* score: Rename _Internal_error_Occurred()Sebastian Huber2014-02-212-3/+3
| | | | Rename _Internal_error_Occurred() into _Terminate().
* score: Change debug helper functionsSebastian Huber2014-02-121-42/+0
| | | | | | | | Rename rtems_internal_error_description() to rtems_internal_error_text(). Rename rtems_fatal_source_description() to rtems_fatal_source_text(). Rename rtems_status_code_description() to rtems_status_text(). Remove previous implementation of rtems_status_text().
* calloc.c: Remove use of register keywordJoel Sherrill2014-02-031-3/+3
|
* libcsupport: Refactor rtems_deviceio_errnoDaniel Ramirez2014-01-082-81/+7
| | | | | | Renames rtems_deviceio_errno to rtems_status_code_to_errno and integrates it into the Classic API Status Handler. This function can now be called by including status.h
* libcsupport: implemented termios functions cfsetspeed and cfmakerawDaniel Ramirez2014-01-072-0/+105
|
* Filesystem: Use default kqfilter and poll handlerSebastian Huber2013-12-201-0/+2
|
* Filesystem: Add readv/writev handlersSebastian Huber2013-12-203-41/+5
| | | | | | | | | The readv() and writev() support was implemented in terms of multiple calls to the read and write handlers. This imposes a problem on device files which use an IO vector as single request entity. For example a low-level network device (e.g. BPF(4)) may use an IO vector to create one frame from multiple protocol layers each with its own IO vector entry.
* libcsupport: Add and use rtems_libio_iovec_eval()Sebastian Huber2013-12-202-155/+31
|
* PR2158: Add support for dup2.Chris Johns2013-12-102-7/+48
| | | | | Split the dub call into dup and dup2 in fcntl.c. This requires a private command which is placed in the internal libio header.
* gettimeofday: Add restrict keywordBryan Dunsmore2013-11-291-2/+2
|
* libcsupport: readlink: add c99 'restrict' keywordChirayu Desai2013-11-291-1/+2
| | | | Signed-off-by: Chirayu Desai <cdesai@cyanogenmod.org>
* statvfs and ALL filesystem handlers: Add restrict keyword.Daniel Ramirez2013-11-212-3/+3
|
* Filesystem: Clear open flag early in close()Sebastian Huber2013-10-311-0/+2
| | | | | This helps to prevent the usage of a file descriptor which is about to close in some situations.
* Filesystem: Zero flags in rtems_libio_free()Sebastian Huber2013-10-311-1/+1
|
* getdents.c: Fix missing prototype warningsJoel Sherrill2013-09-221-1/+10
|
* ctermid.c: Fix missing prototype warningsJoel Sherrill2013-09-221-0/+1
|
* getpwent.c: Fix missing prototype warningsJoel Sherrill2013-09-221-0/+5
|
* newlibc_init.c: Fix missing prototype warningsJoel Sherrill2013-09-221-0/+1
|
* __times.c: Fix missing prototype warningsJoel Sherrill2013-09-221-1/+6
|
* stat.c: Fix missing prototype warningsJoel Sherrill2013-09-221-1/+15
|
* __gettod.c: Fix missing prototype warningsJoel Sherrill2013-09-221-3/+12
|
* __gitpid.c: Fix missing prototype warningsJoel Sherrill2013-09-221-0/+5
|
* __assert.c: Fix missing prototype warningsJoel Sherrill2013-09-221-1/+2
|
* issetugid.c: Fix missing prototype warningsJoel Sherrill2013-09-221-0/+5
|
* Filesystem: Change rtems_filesystem_chown()Sebastian Huber2013-09-123-37/+57
| | | | | Implement POSIX requirements in the high-level file system layer. Use common implementation for all change owner variants.
* Filesystem: Add and use rtems_filesystem_chmod()Sebastian Huber2013-09-122-9/+42
| | | | Implement POSIX requirements in the high-level file system layer.
* termios: check return value from semaphore obtain/releaseGedare Bloom2013-09-051-2/+7
| | | | Raise a fatal error in case of failure.
* Filesystem: Use unprotected chain operationsSebastian Huber2013-08-271-6/+9
| | | | This area is protected by the IO library mutex.
* score: Add and use CHAIN_INITIALIZER_ONE_NODE().Sebastian Huber2013-08-271-13/+6
| | | | | | Add and use CHAIN_NODE_INITIALIZER_ONE_NODE_CHAIN(), RTEMS_CHAIN_INITIALIZER_ONE_NODE() and RTEMS_CHAIN_NODE_INITIALIZER_ONE_NODE_CHAIN().
* Filesystem: Remove superfluous free()Sebastian Huber2013-08-231-2/+0
|
* Expose rtems_verror()Nick Withers2013-08-151-1/+1
|
* filesystem: Add SMP supportSebastian Huber2013-08-141-0/+3
|
* PR766: Delete __RTEMS_VIOLATE_KERNEL_VISIBILITY__Sebastian Huber2013-08-088-20/+0
|
* posix: Create key implementation headerSebastian Huber2013-08-061-1/+1
| | | | | | Move implementation specific parts of key.h and key.inl into new header file keyimpl.h. The key.h contains now only the application visible API.
* score: Rename tod.h to todimpl.hSebastian Huber2013-08-012-2/+2
|
* score: Add and use _Thread_Update_cpu_time_used()Sebastian Huber2013-08-011-5/+15
| | | | Fix _times().