diff options
| author | Stefan Hajnoczi <stefanha@redhat.com> | 2020-03-05 17:08:04 +0000 |
|---|---|---|
| committer | Stefan Hajnoczi <stefanha@redhat.com> | 2020-03-09 16:41:31 +0000 |
| commit | 73fd282e7b6dd4e4ea1c3bbb3d302c8db51e4ccf (patch) | |
| tree | 1338ebeba78a352f20904f9118f694c459599179 /util/Makefile.objs | |
| parent | b321051cf48ccc2d3d832af111d688f2282f089b (diff) | |
| download | focaccia-qemu-73fd282e7b6dd4e4ea1c3bbb3d302c8db51e4ccf.tar.gz focaccia-qemu-73fd282e7b6dd4e4ea1c3bbb3d302c8db51e4ccf.zip | |
aio-posix: add io_uring fd monitoring implementation
The recent Linux io_uring API has several advantages over ppoll(2) and epoll(2). Details are given in the source code. Add an io_uring implementation and make it the default on Linux. Performance is the same as with epoll(7) but later patches add optimizations that take advantage of io_uring. It is necessary to change how aio_set_fd_handler() deals with deleting AioHandlers since removing monitored file descriptors is asynchronous in io_uring. fdmon_io_uring_remove() marks the AioHandler deleted and aio_set_fd_handler() will let it handle deletion in that case. Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com> Link: https://lore.kernel.org/r/20200305170806.1313245-6-stefanha@redhat.com Message-Id: <20200305170806.1313245-6-stefanha@redhat.com>
Diffstat (limited to 'util/Makefile.objs')
| -rw-r--r-- | util/Makefile.objs | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/util/Makefile.objs b/util/Makefile.objs index 6439077a68..6718a38b61 100644 --- a/util/Makefile.objs +++ b/util/Makefile.objs @@ -7,6 +7,7 @@ util-obj-$(call lnot,$(CONFIG_ATOMIC64)) += atomic64.o util-obj-$(CONFIG_POSIX) += aio-posix.o util-obj-$(CONFIG_POSIX) += fdmon-poll.o util-obj-$(CONFIG_EPOLL_CREATE1) += fdmon-epoll.o +util-obj-$(CONFIG_LINUX_IO_URING) += fdmon-io_uring.o util-obj-$(CONFIG_POSIX) += compatfd.o util-obj-$(CONFIG_POSIX) += event_notifier-posix.o util-obj-$(CONFIG_POSIX) += mmap-alloc.o |