| /* | |
| * Copyright (C) 2004 Jeff Dike (jdike@karaya.com) | |
| * Licensed under the GPL | |
| */ | |
| #ifndef AIO_H__ | |
| #define AIO_H__ | |
| enum aio_type { AIO_READ, AIO_WRITE, AIO_MMAP }; | |
| struct aio_thread_reply { | |
| void *data; | |
| int err; | |
| }; | |
| struct aio_context { | |
| int reply_fd; | |
| struct aio_context *next; | |
| }; | |
| #define INIT_AIO_CONTEXT { .reply_fd = -1, \ | |
| .next = NULL } | |
| extern int submit_aio(enum aio_type type, int fd, char *buf, int len, | |
| unsigned long long offset, int reply_fd, | |
| struct aio_context *aio); | |
| #endif |