summaryrefslogtreecommitdiffstats
path: root/cpukit/libcsupport/include/rtems/libio.h (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Remove make preinstallChris Johns2018-01-251-1967/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A speciality of the RTEMS build system was the make preinstall step. It copied header files from arbitrary locations into the build tree. The header files were included via the -Bsome/build/tree/path GCC command line option. This has at least seven problems: * The make preinstall step itself needs time and disk space. * Errors in header files show up in the build tree copy. This makes it hard for editors to open the right file to fix the error. * There is no clear relationship between source and build tree header files. This makes an audit of the build process difficult. * The visibility of all header files in the build tree makes it difficult to enforce API barriers. For example it is discouraged to use BSP-specifics in the cpukit. * An introduction of a new build system is difficult. * Include paths specified by the -B option are system headers. This may suppress warnings. * The parallel build had sporadic failures on some hosts. This patch removes the make preinstall step. All installed header files are moved to dedicated include directories in the source tree. Let @RTEMS_CPU@ be the target architecture, e.g. arm, powerpc, sparc, etc. Let @RTEMS_BSP_FAMILIY@ be a BSP family base directory, e.g. erc32, imx, qoriq, etc. The new cpukit include directories are: * cpukit/include * cpukit/score/cpu/@RTEMS_CPU@/include * cpukit/libnetworking The new BSP include directories are: * bsps/include * bsps/@RTEMS_CPU@/include * bsps/@RTEMS_CPU@/@RTEMS_BSP_FAMILIY@/include There are build tree include directories for generated files. The include directory order favours the most general header file, e.g. it is not possible to override general header files via the include path order. The "bootstrap -p" option was removed. The new "bootstrap -H" option should be used to regenerate the "headers.am" files. Update #3254.
* libio: Remove rtems_libio_t::driverSebastian Huber2017-09-151-1/+0
| | | | | | This member was apparently unused. Close #3133.
* libio: Add hold/drop iop referenceSebastian Huber2017-09-151-3/+5
| | | | | | | 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: 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-151-0/+10
| | | | Update #3132.
* libio: Add rtems_libio_iop_flags()Sebastian Huber2017-09-151-0/+5
| | | | Update #3132.
* libio: Remove LIBIO_FLAGS_CREATESebastian Huber2017-09-141-1/+0
| | | | Close #3134.
* libio: Remove special-case reference countSebastian Huber2017-09-141-1/+0
| | | | | | The top-level IO library structures should contain no special-case data. Update #2859.
* posix/mmap: Add support for file handler and MAP_ANONKevin Kirspel2017-07-141-0/+38
| | | | | | | | | | | 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
* Do not include <sys/ioctl.h> in kernel-spaceSebastian Huber2017-06-071-1/+1
| | | | Update #2833.
* posix/mman: add mmap support for shm objectsGedare Bloom2017-05-051-0/+1
| | | | Update #2859.
* Use linker set for libio initializationSebastian Huber2016-02-031-15/+0
| | | | Update #2408.
* Use atexit() handler to close std file descriptorsSebastian Huber2016-02-031-2/+0
|
* Use linker set for root file system initializationSebastian Huber2016-02-031-2/+0
| | | | Update #2408.
* Filesystem: Delete unused fsmountme_h handlerSebastian Huber2015-02-091-11/+0
|
* Add rtems_filesystem_make_dev_t_from_pointer()Sebastian Huber2015-02-041-0/+9
|
* Filesystem: Delete node type operationSebastian Huber2015-01-221-35/+0
| | | | Use the fstat handler instead.
* Change all references of rtems.com to rtems.org.Chris Johns2014-03-211-1/+1
|
* Filesystem: Add readv/writev handlersSebastian Huber2013-12-201-0/+73
| | | | | | | | | 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.
* statvfs filesystem handlers: Remove restrictJoel Sherrill2013-11-271-4/+4
|
* statvfs and ALL filesystem handlers: Add restrict keyword.Daniel Ramirez2013-11-211-4/+4
|
* Filesystem: Add kernel event filter handlerSebastian Huber2013-11-041-0/+31
| | | | | | This handler is necessary to implement the KQUEUE(2) system calls. Add <sys/event.h> from FreeBSD 8.4.
* Filesystem: Add poll() handlerSebastian Huber2013-11-041-0/+28
| | | | | | | This handler is necessary to implement the SELECT(2) and POLL(2) system calls. Add <sys/poll.h> from FreeBSD 8.4.
* Filesystem: Use ENOTTY for default ioctl() handlerSebastian Huber2013-10-311-1/+1
| | | | This is in line with Linux and FreeBSD.
* Filesystem: DocumentationSebastian Huber2013-10-311-1/+1
|
* Filesystem: PR2146: DocumentationSebastian Huber2013-10-231-1/+3
|
* Filesystem: PR2146: DocumentationSebastian Huber2013-10-151-11/+28
|
* JFFS2: Add RTEMS supportSebastian Huber2013-09-191-0/+1
|
* libcsupport: Delete libc_wrapup()Sebastian Huber2013-04-261-0/+4
| | | | | | | Add and use rtems_libio_exit_helper. Add rtems_libio_exit(). The fclose(stdin) etc. makes no sense during exit. This would use the _REENT structure of the thread calling _exit().
* libcsupport: Rename open_dev_console()Sebastian Huber2013-04-261-2/+2
| | | | | Rename open_dev_console() to rtems_libio_post_driver(). Rename rtems_libio_supp_helper to rtems_libio_post_driver_helper.
* libcsupport: Make LibIO helper constSebastian Huber2013-04-261-7/+8
| | | | | Add and use rtems_libio_helper function type. Add and use rtems_libio_helper_null() instead of NULL pointer.
* cpukit: Use Consistent Beginning of Doxygen Group NotationJoel Sherrill2013-01-101-18/+9
| | | | | This is the result of a sed script which converts all uses of @{ into a consistent form.
* Header File Doxygen Enhancement Task #7Mathew Kallada2012-12-281-4/+4
|
* libcsupport: Doxygen Enhancement Task #8Alex Ivanov2012-12-151-0/+9
| | | | http://www.google-melange.com/gci/task/view/google/gci2012/7996208
* Fix spellingSebastian Huber2012-12-141-32/+32
|
* Filesystem: Revert documentation changesSebastian Huber2012-12-141-34/+34
|
* libcsupport: Doxygen enhancement task #9Alex Ivanov2012-12-131-33/+34
|
* libcsupport: GCI Doxygen Task #7Alex Ivanov2012-12-111-0/+8
| | | | http://www.google-melange.com/gci/task/view/google/gci2012/7975223
* Filesystem: Revert documentation changeSebastian Huber2012-12-091-1/+0
|
* libcsupport: Doxygen Enhancement Task #3Mathew Kallada2012-12-081-0/+1
| | | | http://www.google-melange.com/gci/task/view/google/gci2012/7992210
* Filesystem: Use transient eventSebastian Huber2012-10-301-5/+7
|
* Filesystem: Wait for unmount() to finishSebastian Huber2012-05-291-3/+19
|
* Filesystem: Change pathconf_limits_and_optionsSebastian Huber2012-05-151-1/+1
| | | | | | The pathconf_limits_and_options field of rtems_filesystem_mount_table_entry_t is now a const pointer to reduce the read-write memory demands of file system instances.
* Filesystem: Move operations to mount table entrySebastian Huber2012-05-151-2/+3
| | | | | | | | | | | The scope of the file system operations is the file system instance. The scope of the file system node handlers is the file location. The benefit of moving the operations to the mount table entry is a size reduction of the file location (rtems_filesystem_location_info_t). The code size is slightly increased due to additional load instructions. Restructure rtems_filesystem_mount_table_entry_t to improve cache efficiency.
* Filesystem: Add const qualifier to lock/unlockSebastian Huber2012-05-151-4/+4
|
* Filesystem: PR1255: Move offset update to handlersSebastian Huber2012-05-151-0/+4
| | | | | | | It is now the responsibility of the read() and write() handler to update the offset field of the IO descriptor (rtems_libio_t). This change makes it possible to protect the IO descriptor from concurrent access by per file locks.
* Filesystem: Use ioctl_command_tSebastian Huber2012-05-151-7/+7
|
* Filesystem: Remove duplicate prototypeSebastian Huber2012-05-141-11/+0
|