summaryrefslogtreecommitdiffstats
path: root/cpukit/posix/include
diff options
context:
space:
mode:
authorRalf Corsepius <ralf.corsepius@rtems.org>2010-08-20 09:08:05 +0000
committerRalf Corsepius <ralf.corsepius@rtems.org>2010-08-20 09:08:05 +0000
commita45e501813f1a3f81212d2705da05ed41776e52c (patch)
tree17f9a023e6c463a504eeff76339575fcf33d37c4 /cpukit/posix/include
parent2010-08-19 Joel Sherrill <joel.sherrilL@OARcorp.com> (diff)
downloadrtems-a45e501813f1a3f81212d2705da05ed41776e52c.tar.bz2
2010-08-16 Alin Rus <alin.codejunkie@gmail.com>
* posix/include/aio.h: Add LIO_SYNC. * posix/include/rtems/posix/aio_misc.h: Add aio_request_queue, Cosmetics. * posix/src/aio_cancel.c, posix/src/aio_fsync.c, posix/src/aio_misc.c: Rework.
Diffstat (limited to 'cpukit/posix/include')
-rw-r--r--cpukit/posix/include/aio.h1
-rw-r--r--cpukit/posix/include/rtems/posix/aio_misc.h18
2 files changed, 14 insertions, 5 deletions
diff --git a/cpukit/posix/include/aio.h b/cpukit/posix/include/aio.h
index bc74126287..2700dac19e 100644
--- a/cpukit/posix/include/aio.h
+++ b/cpukit/posix/include/aio.h
@@ -54,6 +54,7 @@ extern "C" {
#define LIO_READ 2 /* request a read() */
#define LIO_WRITE 3 /* request a write() */
#define LIO_NOP 4 /* no transfer is requested */
+#define LIO_SYNC 5 /* needed by aio_fsync() */
/*
* 6.7.1.1 Asynchronous I/O Control Block, P1003.1b-1993, p. 151
diff --git a/cpukit/posix/include/rtems/posix/aio_misc.h b/cpukit/posix/include/rtems/posix/aio_misc.h
index 7d2d1294bd..095d507a1c 100644
--- a/cpukit/posix/include/rtems/posix/aio_misc.h
+++ b/cpukit/posix/include/rtems/posix/aio_misc.h
@@ -62,6 +62,8 @@ extern "C"
} rtems_aio_queue;
+rtems_aio_queue aio_request_queue;
+
#define AIO_QUEUE_INITIALIZED 0xB00B
#ifndef AIO_MAX_THREADS
@@ -72,11 +74,17 @@ extern "C"
#define AIO_MAX_QUEUE_SIZE 30
#endif
-extern int rtems_aio_init (void);
-extern int rtems_aio_enqueue (rtems_aio_request * req);
-extern rtems_aio_request_chain *rtems_aio_search_fd (rtems_chain_control *
- chain, int fildes,
- int create);
+int rtems_aio_init (void);
+int rtems_aio_enqueue (rtems_aio_request *req);
+rtems_aio_request_chain *rtems_aio_search_fd
+(
+ rtems_chain_control *chain,
+ int fildes,
+ int create
+);
+void rtems_aio_remove_fd (rtems_aio_request_chain *r_chain);
+int rtems_aio_remove_req (rtems_chain_control *chain,
+ struct aiocb *aiocbp);
#ifdef RTEMS_DEBUG
#include <assert.h>