A number of storage performance optimizations for high IOPS devices are being developed for QEMU. They should be included in RHEL-AV qemu-kvm once complete. The list of commits so far is: 7391d34c3c aio-posix: make AioHandler dispatch O(1) with epoll 4749079ce0 aio-posix: make AioHandler deletion O(1) 195ed8cb36 qemu/queue.h: add QLIST_SAFE_REMOVE() ca8c6b2275 aio-posix: don't pass ns timeout to epoll_wait() ff29ed3a33 aio-posix: fix use after leaving scope in aio_poll() 8c6b0356b5 util/async: make bh_aio_poll() O(1) f25c0b5479 aio-posix: avoid reacquiring rcu_read_lock() when polling
920d557e5a memory: batch allocate ioeventfds[] in address_space_update_ioeventfds()
d37d0e365a aio-posix: remove idle poll handlers to improve scalability aa38e19f05 aio-posix: support userspace polling of fd monitoring 73fd282e7b aio-posix: add io_uring fd monitoring implementation b321051cf4 aio-posix: simplify FDMonOps->update() prototype 1f050a4690 aio-posix: extract ppoll(2) and epoll(7) fd monitoring 3aa221b382 aio-posix: move RCU_READ_LOCK() into run_poll_handlers() e4346192f1 aio-posix: completely stop polling when disabled c39cbedb54 aio-posix: remove confusing QLIST_SAFE_REMOVE() a31ca6801c qemu/queue.h: clear linked list pointers on remove
ff807d5592 aio-posix: fix io_uring with external events ae60ab7eb2 aio-posix: fix test-aio /aio/event/wait with fdmon-io_uring
636b836d5f aio-posix: signal-proof fdmon-io_uring
44277bf914 aio-posix: keep aio_notify_me disabled during polling 601829f88e async: always set ctx->notified in aio_notify() c13be5a1bf async: rename event_notifier_dummy_cb/poll()
All commits before Comment 5 are in v5.1.0 and will be included in the downstream rebase. Most commits improve scalability so that multi-queue can be enabled when there are 100+ devices. However, multi-queue is not yet enabled by default. Therefore I am closing this BZ for now. There is no new feature to track here. I will file BZs for specific features as they become ready.