X-Git-Url: https://git.kernel.dk/?p=fio.git;a=blobdiff_plain;f=ioengine.h;h=3df0944a30ed30cec9a54b9d4fa464506e311885;hp=18496c3afc860aab452d9a1ce4dcba8344fd7b94;hb=d9fcf07ee7a3eb506ee332e35ceabe909d10a719;hpb=c592b9fe12d4739d99d5bece517e304804876df6;ds=sidebyside diff --git a/ioengine.h b/ioengine.h index 18496c3a..3df0944a 100644 --- a/ioengine.h +++ b/ioengine.h @@ -6,6 +6,7 @@ enum { IO_U_F_FREE = 1 << 0, IO_U_F_FLIGHT = 1 << 1, + IO_U_F_FREE_DEF = 1 << 2, }; /* @@ -112,6 +113,7 @@ enum fio_ioengine_flags { FIO_UNIDIR = 1 << 5, /* engine is uni-directional */ FIO_NOIO = 1 << 6, /* thread does only pseudo IO */ FIO_SIGQUIT = 1 << 7, /* needs SIGQUIT to exit */ + FIO_PIPEIO = 1 << 8, /* input/output no seekable */ }; /* @@ -139,9 +141,10 @@ extern void close_ioengine(struct thread_data *); extern struct io_u *__get_io_u(struct thread_data *); extern struct io_u *get_io_u(struct thread_data *); extern void put_io_u(struct thread_data *, struct io_u *); +extern void clear_io_u(struct thread_data *, struct io_u *); extern void requeue_io_u(struct thread_data *, struct io_u **); -extern long __must_check io_u_sync_complete(struct thread_data *, struct io_u *); -extern long __must_check io_u_queued_complete(struct thread_data *, int); +extern int __must_check io_u_sync_complete(struct thread_data *, struct io_u *, unsigned long *); +extern int __must_check io_u_queued_complete(struct thread_data *, int, unsigned long *); extern void io_u_queued(struct thread_data *, struct io_u *); extern void io_u_log_error(struct thread_data *, struct io_u *); extern void io_u_mark_depth(struct thread_data *, unsigned int);