summaryrefslogtreecommitdiffstats
path: root/cpukit (follow)
Commit message (Collapse)AuthorAgeFilesLines
* cpukit/capture: Print the uptime and diff in ctrace.Chris Johns2013-12-241-17/+17
| | | | | | | | | | | Print the uptime and difference in nanoseconds to the previous record in the ctrace output. For example: 0:00:59.474927121 14760 0a01000c TNTD 235 235 CREATED_BY 0:00:59.474927418 297 0a010012 /dev 235 235 CREATED 0:00:59.474930799 3381 0a01000c TNTD 235 235 STARTED_BY 0:00:59.474931105 306 0a010012 /dev 235 235 STARTED 0:00:59.475072297 141192 0a01000c TNTD 235 235 SWITCHED_OUT
* cpukit/capture: Use the new RTEMS API to get the uptime in nanoseconds.Chris Johns2013-12-243-16/+57
| | | | | Use the new API to get the uptime in nanoseconds and update the capture engine.
* cpukit/rtems: Add rtems_clock_get_uptime_nanoseconds to the RTEMS API.Chris Johns2013-12-248-3/+127
| | | | | | Add Timestamp support in the score to return a timestamp in nanoseconds. Add a test. Update the RTEMS API documentation.
* rtems: classic api to/from core priority conversionsDaniel Ramirez2013-12-215-5/+27
|
* libcsupport: Accept NULL for zero-length entriesSebastian Huber2013-12-203-21/+29
|
* Filesystem: Use default kqfilter and poll handlerSebastian Huber2013-12-2020-0/+50
|
* Filesystem: Add readv/writev handlersSebastian Huber2013-12-2026-145/+352
| | | | | | | | | 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-203-155/+87
|
* cpukit/capture: Update the capture engine.Chris Johns2013-12-193-233/+195
| | | | | | | | | | | | The capture did not work due to changes in the workspace allocator. The engine now scans all existing tasks when enabled and does any allocations then. Fixed a bug in the ctset commandi in the CLI. Updated the capture engine to use 64bit nanosec timestamps. Fixed the CLI showing the stack usage.
* For PR 2164 - RFS File System - fix bitmap_create_search loop bugAlan Cudmore2013-12-191-1/+2
| | | | | | | | | | | | | | | | | This is for the RFS file system. There is a bug in the rtems_rfs_bitmap_create_search loop. It is supposed to iterate over the range of bits in a search element ( usually 32 bits ), so it should loop through bits 0 through 31. Instead it loops through 0 - 32, causing some blocks not to be allocated. As in PR 2163, this depends on the block size and number of blocks in a file system. Block sizes and group sizes that are powers of 2 seem to work fine ( 512 byte blocks, 4096 block groups, etc ). When the block sizes are not powers of 2, then this loop error causes some of the blocks at the end of a group to be skipped, preventing 100% of the blocks from being used. A simple test for this and PR2163 is to create a RAM disk with block size 3900 and at least 1 full group ( 31200 blocks ). A file system with these sizes will not be able to allocate 100% of the blocks.
* For PR 2162 - RFS File System - statvfs reports 1 block freeAlan Cudmore2013-12-192-2/+2
| | | | | | | | | This is for the RFS file system. The statvfs call reports 1 block free when the file system is full because it does not account for the superblock in its calculation of free blocks. This is a simple fix that adjusts the number of blocks reported to account for the superblock. We may want to wait for a more complete solution such as locating the superblock in each group.
* For PR 2163 - RFS File System - fix group search algorithm bugAlan Cudmore2013-12-191-1/+15
| | | | | | | | | This is for the RFS file system. There is a bug in the group search algorithm where it will skip groups, causing blocks to remain unallocated. This is dependant on the size of the blocks and number of blocks in a group, so it does not always show up. The fix corrects the skipping of groups during the search, allowing all of the blocks to be found.
* arm: Fix set by but not used warningSebastian Huber2013-12-161-1/+2
|
* nfsclient: Move defines to cover all header filesSebastian Huber2013-12-161-2/+3
|
* JFFS2: Do not re-define struct iovecSebastian Huber2013-12-161-5/+1
|
* cpukit/shell: Control help break with SHELL_LINES env variable.Chris Johns2013-12-161-3/+11
| | | | | | | | Control the help command break with the SHELL_LINES evironment variable where the numeric value is the number of lines to break on. If the value is 0 the output is not broken. The default is 16 lines. Add shell documentation for the help command.
* no_cpu/cpusmplock.h: Clean up to be compilableJoel Sherrill2013-12-141-0/+4
|
* cpukit/configure.ac: Probe for SMP affinity methodsJoel Sherrill2013-12-131-0/+8
|
* PR2160: imfs: Use ENOSYS for unsupported nodesSebastian Huber2013-12-114-7/+18
| | | | | Return an error status with errno set to ENOSYS during node creation for nodes not available in the current configuration.
* alarm.c: Use _Assert() not assert()Joel Sherrill2013-12-101-1/+1
|
* PR2138: rtems_rfs_rtems_initialize() can erroneously set errno.Chris Johns2013-12-101-1/+1
| | | | Patch from Nick for this. Thanks.
* Merge branch 'master' into amJoel Sherrill2013-12-096-52/+98
|\
| * PR2161: Set the source port to SYSLOG in the syslog socket.Chris Johns2013-12-101-1/+1
| |
| * PR2158: Add support for dup2.Chris Johns2013-12-103-7/+55
| | | | | | | | | | Split the dub call into dup and dup2 in fcntl.c. This requires a private command which is placed in the internal libio header.
| * PR2159: Have the FIFO driver read follow POSIX standard.Chris Johns2013-12-101-43/+41
| | | | | | | | | | The read call was only returning once the requested buffer was full. The change returns any available data.
| * libfs/imfs: Set the FIFO control block.Chris Johns2013-12-101-1/+1
| | | | | | | | The FIFO was incorrectly set to the default control block.
* | alarm.c: Per comment add debug code for kill() failingJoel Sherrill2013-12-091-4/+17
| | | | | | | | | | This is highly unlikely and would indicate a serious bug in the system or corruption. But it is better to be cautious.
* | pthread.c: Use UINT32_MAX rather than constant valueJoel Sherrill2013-12-091-1/+1
| |
* | condwaitsupp.c: Return EPERM if waiting and mutex is not lockedJoel Sherrill2013-12-091-4/+8
| | | | | | | | | | | | This error check was commented out because it is not in the POSIX specification. However, the GNU/Linux manual page does document that EPERM is to be returned in this situation.
* | psignalimpl.h: Remove dead commentJoel Sherrill2013-12-091-3/+1
| |
* | pthread.c: Remove XXX and use SIGNAL_ constantsJoel Sherrill2013-12-091-5/+3
| |
* | posix/config.h: Comment clean upJoel Sherrill2013-12-091-10/+102
| |
* | signalcatch.c: Remove junk commentJoel Sherrill2013-12-092-2/+1
| |
* | timerimpl.h: Comment clean upJoel Sherrill2013-12-091-36/+22
| |
* | semaphoreimpl.h: Comment clean upJoel Sherrill2013-12-091-79/+38
| |
* | mqueueimpl.h: Comment clean upJoel Sherrill2013-12-091-176/+91
| |
* | condimpl.h: Comment clean upJoel Sherrill2013-12-091-98/+35
| |
* | ptimer.h: Comment clean upJoel Sherrill2013-12-091-31/+14
| |
* | muteximpl.h: Comment clean upJoel Sherrill2013-12-091-108/+44
| |
* | pspin.c: Comment clean upJoel Sherrill2013-12-091-16/+7
| |
* | pbarrier.c: Comment clean upJoel Sherrill2013-12-091-16/+7
|/
* cpukit/rtems: Remove XXX in commentsJoel Sherrill2013-12-0929-73/+112
|
* Fix leap year calculationNickolay Semyonov-Kolchin2013-12-051-1/+2
| | | | | Reference: http://en.wikipedia.org/wiki/Leap_year Bug: https://www.rtems.org/bugzilla/show_bug.cgi?id=1422
* Update to Mongoose 3.9 at the last point before the MIT -> GPL license changeNick Withers2013-12-043-1403/+2572
| | | | | | | | | | | | | | | | | | | | [That is, https://github.com/cesanta/mongoose/commit/04fc209644b414d915c446bb1815b55e9fe63acc. See https://groups.google.com/forum/#!topic/mongoose-users/aafbOnHonkI] The RTEMS patches described in the following emails and made to the previous Mongoose base have been applied: - http://www.rtems.org/pipermail/rtems-devel/2012-July/001345.html - http://www.rtems.org/pipermail/rtems-devel/2012-July/001343.html - http://www.rtems.org/pipermail/rtems-devel/2012-July/001346.html (except to mongoose.1, see below) ...as well as a patch very similar to that discussed at http://forums.bannister.org/ubbthreads.php?ubb=showflat&topic=7600&gonew=1 to provide poll() (which might be able to go away soon, with incoming RTEMS poll() support) mg_connect(), mg_url_encode() and mg_vprintf() were additionally marked "static" to silence warnings. mongoose.1 appears to have been removed from the upstream distribution. Note that the API's changed, for example: - A struct mg_callbacks must now be provided to mg_start(). Initialise members to NULL to disable various types of callbacks - Callback interfaces have changed significantly in general - The short form of options (e.g., "u" instead of "run_as_user") are no longer available (upstream) - The "max_request_size" options has been removed
* libblock: Use LAST for the last partition blockSebastian Huber2013-12-041-1/+1
|
* PR2157: fdisk partition table dump improvementWendell P Silva2013-12-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Show the correct index of partition's last block (partition end). The documentation of struct rtems_bdpart_partition (P) says that the member 'end' is the "Block index for partition end (this block is not a part of the partition)". Then, the fdisk's partition table dump should print ((P)->end - 1). Currently, one can think that the last block of a partition P is superposing the beginning of the partition (P + 1). Example: ---------------------------------------- PARTITION TABLE ------------+------------+-------------- BEGIN | END | TYPE ------------+------------+-------------- 2048 | 133120 | FAT 32 133120 | 15628032 | FAT 32 ------------+------------+-------------- With be proposed patch, it would be: ---------------------------------------- PARTITION TABLE ------------+------------+-------------- BEGIN | END | TYPE ------------+------------+-------------- 2048 | 133119 | FAT 32 133120 | 15628031 | FAT 32 ------------+------------+--------------
* PR2056: libqos conversion from uint32_t to time_tGedare Bloom2013-12-031-2/+2
| | | | | AquosA defines qres_params_t using qres_time_t so we should also. This fixes an invalid conversion from uint32_t into time_t as well.
* arm: Clear reservationsSebastian Huber2013-12-032-1/+2
| | | | | Recent GCC versions use atomic operations based on load/store exclusive in the C++ library.
* score: Minor _Thread_Dispatch() optimizationSebastian Huber2013-12-021-2/+1
| | | | | It is not necessary to load the executing thread control again after the context switch since it is an invariant of the executing thread.
* posix: Use cleanup contexts on the stackSebastian Huber2013-12-027-13/+111
| | | | | | | | | | Provide support for latest Newlib <pthread.h> change. The cleanup contexts are stored on the thread stack. This is conformant with the POSIX requirements for the pthread_cleanup_push() and pthread_cleanup_pop() statement pair. Passing an invalid pointer as the routine to pthread_cleanup_push() is now a usage error and the behaviour is undefined.