summaryrefslogtreecommitdiffstats
path: root/cpukit/libcsupport (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Use right time format in _times()Sebastian Huber2017-10-121-9/+5
| | | | | Update #2740. Close #3179.
* timecounter: Merge FreeBSD change r303382Konstantin Belousov2017-10-121-1/+3
| | | | | | | | | | | | | | | | | | | | | | Hide the boottime and bootimebin globals, provide the getboottime(9) and getboottimebin(9) KPI. Change consumers of boottime to use the KPI. The variables were renamed to avoid shadowing issues with local variables of the same name. Issue is that boottime* should be adjusted from tc_windup(), which requires them to be members of the timehands structure. As a preparation, this commit only introduces the interface. Some uses of boottime were found doubtful, e.g. NLM uses boottime to identify the system boot instance. Arguably the identity should not change on the leap second adjustment, but the commit is about the timekeeping code and the consumers were kept bug-to-bug compatible. Tested by: pho (as part of the bigger patch) Reviewed by: jhb (same) Discussed with: bde Sponsored by: The FreeBSD Foundation MFC after: 1 month X-Differential revision: https://reviews.freebsd.org/D7302 Update #3175.
* posix: Implement self-contained POSIX mutexSebastian Huber2017-10-052-2/+0
| | | | | | | | POSIX mutexes are now available in all configurations and no longer depend on --enable-posix. Update #2514. Update #3112.
* posix: Implement self-contained POSIX condvarSebastian Huber2017-10-052-3/+0
| | | | | | | | POSIX condition variables are now available in all configurations and no longer depend on --enable-posix. Update #2514. Update #3113.
* posix: Implement self-contained POSIX rwlocksSebastian Huber2017-10-052-3/+0
| | | | | | | | POSIX rwlocks are now available in all configurations and no longer depend on --enable-posix. Update #2514. Update #3115.
* posix: Implement self-contained POSIX barriersSebastian Huber2017-10-052-2/+0
| | | | | | | | POSIX barriers are now available in all configurations and no longer depend on --enable-posix. Update #2514. Update #3114.
* posix: Optimize pthread_once_tSebastian Huber2017-10-051-1/+1
| | | | | | Reduce size of pthread_once_t and make it zero-initialized. Update #3142.
* Add "\n" to "\r\n" translation to rtems_putc()Sebastian Huber2017-09-191-1/+5
| | | | Update #3122.
* libio: Remove rtems_libio_t::driverSebastian Huber2017-09-151-1/+0
| | | | | | This member was apparently unused. Close #3133.
* libio: Use FIFO for iop free listSebastian Huber2017-09-154-13/+25
| | | | Update #3136.
* libio: Add hold/drop iop referenceSebastian Huber2017-09-1518-43/+140
| | | | | | | Check iop reference count in close() and return -1 with errno set to EBUSY in case the file descriptor is still in use. Update #3132.
* libio: Unify readv() and writev()Sebastian Huber2017-09-153-26/+50
| | | | Update #3132.
* libio: LIBIO_GET_IOP() LIBIO_GET_IOP_WITH_ACCESS()Sebastian Huber2017-09-1515-81/+62
| | | | | | | | | Replace rtems_libio_check_fd(), rtems_libio_iop(), rtems_libio_check_open() and rtems_libio_check_permissions() combinations with new LIBIO_GET_IOP() and LIBIO_GET_IOP_WITH_ACCESS() macros. Update #3132.
* libio: Add rtems_libio_iop_is_append()Sebastian Huber2017-09-151-0/+10
| | | | Update #3132.
* libio: Add rtems_libio_iop_is_writeable()Sebastian Huber2017-09-151-0/+10
| | | | Update #3132.
* libio: Add rtems_libio_iop_is_readable()Sebastian Huber2017-09-151-0/+10
| | | | Update #3132.
* libio: Add rtems_libio_iop_is_no_delay()Sebastian Huber2017-09-152-1/+11
| | | | Update #3132.
* libio: Add rtems_libio_iop_flags()Sebastian Huber2017-09-152-5/+10
| | | | Update #3132.
* libio: Add rtems_libio_iop_flags_initialize()Sebastian Huber2017-09-154-8/+31
| | | | Update #3132.
* libio: Add iop set/clear flagsSebastian Huber2017-09-154-7/+48
| | | | Update #3132.
* libio: rtems_libio_check_permissions_with_error()Sebastian Huber2017-09-155-7/+7
| | | | | | | Rename rtems_libio_check_permissions_with_error() in rtems_libio_check_permissions(). Update #3132.
* libio: Remove rtems_libio_check_permissions()Sebastian Huber2017-09-152-11/+1
| | | | | | | Remove rtems_libio_check_permissions() and convert single user to rtems_libio_check_permissions_with_error(). Update #3132.
* libio: Do simple parameter checks earlySebastian Huber2017-09-153-12/+14
| | | | | | This simplifies error handling later. Update #3132.
* libio: Simplify rtems_libio_iop()Sebastian Huber2017-09-142-8/+14
| | | | | | | Remove the file descriptor validation. This is the job of rtems_libio_check_fd(). Use an inline function instread of a macro. Update #3132.
* libio: Remove LIBIO_FLAGS_CREATESebastian Huber2017-09-143-8/+0
| | | | Close #3134.
* libio: Remove special-case reference countSebastian Huber2017-09-143-72/+2
| | | | | | The top-level IO library structures should contain no special-case data. Update #2859.
* Simplify and unify BSP_output_charSebastian Huber2017-09-121-2/+2
| | | | | | | | The BSP_output_char should output a char and not mingle with high level processing, e.g. '\n' to '\r\n' translation. Move this translation to rtems_putc(). Remove it from all the BSP_output_char implementations. Close #3122.
* Implement clock()Sebastian Huber2017-09-072-0/+34
| | | | | | | | | | | Newlib uses _times_r() in clock(). The problem is that the _times_r() clock frequency is defined by sysconf(_SC_CLK_TCK). The clock frequency of clock() is the constant CLOCKS_PER_SEC. FreeBSD uses getrusage() for clock(). Since RTEMS has only one process, the implementation can be simplified. Update #3121.
* Fix integer overflow problems in times()Sebastian Huber2017-09-061-34/+16
| | | | | | | An integer overflow may still happen, however, only after 68 years of system uptime. Close #2135.
* Include missing <string.h>Sebastian Huber2017-08-255-0/+5
| | | | Update #2133.
* Fix IO control request typeSebastian Huber2017-07-281-1/+2
|
* posix/mmap: Add support for file handler and MAP_ANONKevin Kirspel2017-07-144-0/+53
| | | | | | | | | | | Added a mmap file handler to struct _rtems_filesystem_file_handlers_r. Updated each file handler object to support the default mmap handler. Updated mmap() to call the mmap handler for MAP_SHARED. Added a mmap file handler for shm Added support for MAP_ANON in mmap(). Updates #2859
* sys/utsname.h: Increase buffer to avoid overflowJoel Sherrill2017-06-211-2/+2
|
* network: Move RTEMS specificsSebastian Huber2017-06-071-11/+0
| | | | | | | | | Move RTEMS specifics to <rtems/rtems_bsdnet.h>. Introduce rtems_tap_ifreq. The interface tap support is RTEMS-specific and only available in the legacy network stack. Update #2833.
* Do not include <sys/ioctl.h> in kernel-spaceSebastian Huber2017-06-072-1/+2
| | | | Update #2833.
* Move RTEMS-specific Termios API contentSebastian Huber2017-06-074-34/+11
| | | | | | | Remove obsolete support for OFILL, OFDEL, NLDLY, CRDLY, BSDLY, VTDLY, and FFDLY which is not present on FreeBSD and not implemented in Linux. Update #2833.
* Do not use deprecated <sys/termios.h>Sebastian Huber2017-06-071-1/+1
| | | | Update #2833.
* Provide kernel space headers used by NewlibSebastian Huber2017-06-074-0/+39
| | | | Update #2833.
* posix/mman: add mmap support for shm objectsGedare Bloom2017-05-053-2/+72
| | | | Update #2859.
* Updating default termios initialization for dedicated input/output baud ratesKevin Kirspel2017-04-101-1/+4
| | | | updates #2897.
* sys/event.h: Update to FreeBSD head 2017-02-13Sebastian Huber2017-04-041-7/+9
|
* bsps: Fix baud settingsSebastian Huber2017-04-031-4/+2
| | | | Update #2897.
* termios: Avoid invalid memory accessSebastian Huber2017-03-271-1/+3
| | | | Update #2897.
* termios: Synchronize with latest FreeBSD headersKevin Kirspel2017-03-2224-286/+642
| | | | | | | | | | | Adding modified FreeBSD headers to synchronize RTEMS termios with FreeBSD. Modify termios to support dedicated input and output baud for termios structure. Updated BSPs to use dedicated input and output baud in termios structure. Updated tools to use dedicated input and output baud in termios structure. Updated termios testsuites to use dedicated input and output baud in termios structure. Close #2897.
* libio: Fix deadlock in location managementSebastian Huber2017-03-167-13/+17
| | | | | | | | Perform a context-dependent deferred location release to avoid a deadlock on the file system instance locks, for example during a chdir(). Update #2936.
* posix_devctl: Fix for pre C99Sebastian Huber2017-03-021-5/+5
| | | | | Use __restrict just like in <devctl.h> to avoid compiler errors with older GCC, e.g. 4.8 or 4.9.
* termios: Simplify some calculationsSebastian Huber2017-02-281-4/+3
| | | | Use the modular arithmetic addition rule.
* termios: Implement non-blocking writeSebastian Huber2017-02-281-4/+6
|
* termios: Make write POSIX compatibleSebastian Huber2017-02-281-34/+81
| | | | | | | | Currently only blocking read/write operations are implemented. A blocking write must transfer at least one character. It should not wait for the device for the second character and so on. Close #2917.
* termios: Introduce doTransmit()Sebastian Huber2017-02-281-10/+15
|