/* * 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