All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] [RFC PATCH v2 0/9] Add support for io_uring
@ 2019-05-24 14:03 Aarushi Mehta
  2019-05-24 14:03 ` [Qemu-devel] [RFC PATCH v2 1/9] qapi/block-core: add option " Aarushi Mehta
                   ` (8 more replies)
  0 siblings, 9 replies; 20+ messages in thread
From: Aarushi Mehta @ 2019-05-24 14:03 UTC (permalink / raw)
  To: qemu-devel
  Cc: Kevin Wolf, qemu-block, 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. It is expected that it will replace the old AIO interface

Testing it requires a host kernel 5.1 or newer 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

Aarushi Mehta (9):
  qapi/block-core: add option for io_uring
  block/block: add BDRV flag for io_uring
  include/block: declare interfaces for io_uring
  stubs: add aio interface stubs for io_uring
  util/async: add aio interfaces for io_uring
  block/io_uring: implements interfaces for io_uring
  blockdev: accept io_uring as option
  block/file-posix: extends to use with io_uring
  configure: permit use of io_uring

 MAINTAINERS             |  11 ++
 block/Makefile.objs     |   2 +
 block/file-posix.c      |  63 ++++++++-
 block/io_uring.c        | 306 ++++++++++++++++++++++++++++++++++++++++
 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, 511 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] 20+ messages in thread

end of thread, other threads:[~2019-05-24 16:26 UTC | newest]

Thread overview: 20+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-05-24 14:03 [Qemu-devel] [RFC PATCH v2 0/9] Add support for io_uring Aarushi Mehta
2019-05-24 14:03 ` [Qemu-devel] [RFC PATCH v2 1/9] qapi/block-core: add option " Aarushi Mehta
2019-05-24 15:12   ` Stefan Hajnoczi
2019-05-24 16:17     ` Markus Armbruster
2019-05-24 14:03 ` [Qemu-devel] [RFC PATCH v2 2/9] block/block: add BDRV flag " Aarushi Mehta
2019-05-24 15:12   ` Stefan Hajnoczi
2019-05-24 14:03 ` [Qemu-devel] [RFC PATCH v2 3/9] include/block: declare interfaces " Aarushi Mehta
2019-05-24 15:16   ` Stefan Hajnoczi
2019-05-24 14:03 ` [Qemu-devel] [RFC PATCH v2 4/9] stubs: add aio interface stubs " Aarushi Mehta
2019-05-24 15:24   ` Stefan Hajnoczi
2019-05-24 14:03 ` [Qemu-devel] [RFC PATCH v2 5/9] util/async: add aio interfaces " Aarushi Mehta
2019-05-24 15:25   ` Stefan Hajnoczi
2019-05-24 14:03 ` [Qemu-devel] [RFC PATCH v2 6/9] block/io_uring: implements " Aarushi Mehta
2019-05-24 16:17   ` Stefan Hajnoczi
2019-05-24 14:03 ` [Qemu-devel] [RFC PATCH v2 7/9] blockdev: accept io_uring as option Aarushi Mehta
2019-05-24 16:17   ` Stefan Hajnoczi
2019-05-24 14:03 ` [Qemu-devel] [RFC PATCH v2 8/9] block/file-posix: extends to use with io_uring Aarushi Mehta
2019-05-24 16:19   ` Stefan Hajnoczi
2019-05-24 14:03 ` [Qemu-devel] [RFC PATCH v2 9/9] configure: permit use of io_uring Aarushi Mehta
2019-05-24 16:20   ` Stefan Hajnoczi

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.