All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH v3 0/8] Add support for io_uring
@ 2019-05-27  8:03 Aarushi Mehta
  2019-05-27  8:03 ` [Qemu-devel] [PATCH v3 1/8] configure: permit use of io_uring Aarushi Mehta
                   ` (9 more replies)
  0 siblings, 10 replies; 17+ messages in thread
From: Aarushi Mehta @ 2019-05-27  8:03 UTC (permalink / raw)
  To: qemu-devel
  Cc: Kevin Wolf, qemu-block, Max Reitz, saket.sinha89,
	Stefan Hajnoczi, Julia Suvorova, Aarushi Mehta

This patch series adds support for the newly developed io_uring Linux AIO 
interface. Linux io_uring is faster than Linux's AIO asynchronous I/O code, 
offers efficient buffered asynchronous I/O support, the ability to do I/O 
without performing a system call via polled I/O, and other efficiency 
enhancements. Testing it requires a host kernel (5.1+) and the liburing 
library. Use the option -drive aio=io_uring to enable it.

v2:
- Fix Patchew errors
- Option now enumerates only for CONFIG_LINUX in qapi
- Removed redudant and broken code in io_uring
- io_uring now aborts on sqe leak

v3:
- Fix major errors in io_uring (sorry)
- Option now enumerates for CONFIG_LINUX_IO_URING
- pkg config support added

Aarushi Mehta (8):
  configure: permit use of io_uring
  qapi/block-core: add option for io_uring
  block/block: add BDRV flag for io_uring
  block/io_uring: implements interfaces for io_uring
  stubs: add stubs for io_uring interface
  util/async: add aio interfaces for io_uring
  blockdev: accept io_uring as option
  block/fileposix: extend to use io_uring

 MAINTAINERS             |   8 ++
 block/Makefile.objs     |   3 +
 block/file-posix.c      |  65 ++++++++-
 block/io_uring.c        | 301 ++++++++++++++++++++++++++++++++++++++++
 blockdev.c              |   4 +-
 configure               |  27 ++++
 include/block/aio.h     |  16 ++-
 include/block/block.h   |   1 +
 include/block/raw-aio.h |  15 ++
 qapi/block-core.json    |   6 +-
 stubs/Makefile.objs     |   1 +
 stubs/io_uring.c        |  32 +++++
 util/async.c            |  36 +++++
 13 files changed, 506 insertions(+), 9 deletions(-)
 create mode 100644 block/io_uring.c
 create mode 100644 stubs/io_uring.c

-- 
2.17.1



^ permalink raw reply	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2019-05-27 20:30 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-05-27  8:03 [Qemu-devel] [PATCH v3 0/8] Add support for io_uring Aarushi Mehta
2019-05-27  8:03 ` [Qemu-devel] [PATCH v3 1/8] configure: permit use of io_uring Aarushi Mehta
2019-05-27  8:03 ` [Qemu-devel] [PATCH v3 2/8] qapi/block-core: add option for io_uring Aarushi Mehta
2019-05-27  8:29   ` [Qemu-devel] [Qemu-block] " Stefan Hajnoczi
2019-05-27  8:03 ` [Qemu-devel] [PATCH v3 3/8] block/block: add BDRV flag " Aarushi Mehta
2019-05-27  8:30   ` Stefan Hajnoczi
2019-05-27  8:03 ` [Qemu-devel] [PATCH v3 4/8] block/io_uring: implements interfaces " Aarushi Mehta
2019-05-27  9:32   ` Stefan Hajnoczi
2019-05-27  8:03 ` [Qemu-devel] [PATCH v3 5/8] stubs: add stubs for io_uring interface Aarushi Mehta
2019-05-27  8:32   ` Stefan Hajnoczi
2019-05-27  8:03 ` [Qemu-devel] [PATCH v3 6/8] util/async: add aio interfaces for io_uring Aarushi Mehta
2019-05-27  8:03 ` [Qemu-devel] [PATCH v3 7/8] blockdev: accept io_uring as option Aarushi Mehta
2019-05-27  8:03 ` [Qemu-devel] [PATCH v3 8/8] block/fileposix: extend to use io_uring Aarushi Mehta
2019-05-27  9:42   ` Stefan Hajnoczi
2019-05-27  8:25 ` [Qemu-devel] [PATCH v3 0/8] Add support for io_uring no-reply
2019-05-27  9:01   ` Stefan Hajnoczi
2019-05-27  8:43 ` no-reply

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.