aio.h (9468484fe904ab4691de6d9c34616667f377ceac) | aio.h (3cbc17ee92479ff56d0d6afecc0def6f7ec01153) |
---|---|
1/* 2 * QEMU aio implementation 3 * 4 * Copyright IBM, Corp. 2008 5 * 6 * Authors: 7 * Anthony Liguori <aliguori@us.ibm.com> 8 * --- 41 unchanged lines hidden (view full) --- 50typedef struct AioHandler AioHandler; 51typedef QLIST_HEAD(, AioHandler) AioHandlerList; 52typedef void QEMUBHFunc(void *opaque); 53typedef bool AioPollFn(void *opaque); 54typedef void IOHandler(void *opaque); 55 56struct ThreadPool; 57struct LinuxAioState; | 1/* 2 * QEMU aio implementation 3 * 4 * Copyright IBM, Corp. 2008 5 * 6 * Authors: 7 * Anthony Liguori <aliguori@us.ibm.com> 8 * --- 41 unchanged lines hidden (view full) --- 50typedef struct AioHandler AioHandler; 51typedef QLIST_HEAD(, AioHandler) AioHandlerList; 52typedef void QEMUBHFunc(void *opaque); 53typedef bool AioPollFn(void *opaque); 54typedef void IOHandler(void *opaque); 55 56struct ThreadPool; 57struct LinuxAioState; |
58struct LuringState; | 58typedef struct LuringState LuringState; |
59 60/* Is polling disabled? */ 61bool aio_poll_disabled(AioContext *ctx); 62 63/* Callbacks for file descriptor monitoring implementations */ 64typedef struct { 65 /* 66 * update: --- 140 unchanged lines hidden (view full) --- 207 * Has its own locking. 208 */ 209 struct ThreadPool *thread_pool; 210 211#ifdef CONFIG_LINUX_AIO 212 struct LinuxAioState *linux_aio; 213#endif 214#ifdef CONFIG_LINUX_IO_URING | 59 60/* Is polling disabled? */ 61bool aio_poll_disabled(AioContext *ctx); 62 63/* Callbacks for file descriptor monitoring implementations */ 64typedef struct { 65 /* 66 * update: --- 140 unchanged lines hidden (view full) --- 207 * Has its own locking. 208 */ 209 struct ThreadPool *thread_pool; 210 211#ifdef CONFIG_LINUX_AIO 212 struct LinuxAioState *linux_aio; 213#endif 214#ifdef CONFIG_LINUX_IO_URING |
215 struct LuringState *linux_io_uring; | 215 LuringState *linux_io_uring; |
216 217 /* State for file descriptor monitoring using Linux io_uring */ 218 struct io_uring fdmon_io_uring; 219 AioHandlerSList submit_list; 220#endif 221 222 /* TimerLists for calling timers - one per clock type. Has its own 223 * locking. --- 275 unchanged lines hidden (view full) --- 499 500/* Setup the LinuxAioState bound to this AioContext */ 501struct LinuxAioState *aio_setup_linux_aio(AioContext *ctx, Error **errp); 502 503/* Return the LinuxAioState bound to this AioContext */ 504struct LinuxAioState *aio_get_linux_aio(AioContext *ctx); 505 506/* Setup the LuringState bound to this AioContext */ | 216 217 /* State for file descriptor monitoring using Linux io_uring */ 218 struct io_uring fdmon_io_uring; 219 AioHandlerSList submit_list; 220#endif 221 222 /* TimerLists for calling timers - one per clock type. Has its own 223 * locking. --- 275 unchanged lines hidden (view full) --- 499 500/* Setup the LinuxAioState bound to this AioContext */ 501struct LinuxAioState *aio_setup_linux_aio(AioContext *ctx, Error **errp); 502 503/* Return the LinuxAioState bound to this AioContext */ 504struct LinuxAioState *aio_get_linux_aio(AioContext *ctx); 505 506/* Setup the LuringState bound to this AioContext */ |
507struct LuringState *aio_setup_linux_io_uring(AioContext *ctx, Error **errp); | 507LuringState *aio_setup_linux_io_uring(AioContext *ctx, Error **errp); |
508 509/* Return the LuringState bound to this AioContext */ | 508 509/* Return the LuringState bound to this AioContext */ |
510struct LuringState *aio_get_linux_io_uring(AioContext *ctx); | 510LuringState *aio_get_linux_io_uring(AioContext *ctx); |
511/** 512 * aio_timer_new_with_attrs: 513 * @ctx: the aio context 514 * @type: the clock type 515 * @scale: the scale 516 * @attributes: 0, or one to multiple OR'ed QEMU_TIMER_ATTR_<id> values 517 * to assign 518 * @cb: the callback to call on timer expiry --- 194 unchanged lines hidden --- | 511/** 512 * aio_timer_new_with_attrs: 513 * @ctx: the aio context 514 * @type: the clock type 515 * @scale: the scale 516 * @attributes: 0, or one to multiple OR'ed QEMU_TIMER_ATTR_<id> values 517 * to assign 518 * @cb: the callback to call on timer expiry --- 194 unchanged lines hidden --- |