On 11/4/25 05:29, Stefan Hajnoczi wrote: ..
This patch series contains io_uring improvements:1. Support the glib event loop in fdmon-io_uring. - aio-posix: fix race between io_uring CQE and AioHandler deletion - aio-posix: keep polling enabled with fdmon-io_uring.c - tests/unit: skip test-nested-aio-poll with io_uring - aio-posix: integrate fdmon into glib event loop 2. Enable fdmon-io_uring on hosts where io_uring is available at runtime. Otherwise continue using ppoll(2) or epoll(7). - aio: remove aio_context_use_g_source() 3. Add the new aio_add_sqe() API for submitting io_uring requests in the QEMU event loop. - aio: free AioContext when aio_context_new() fails - aio: add errp argument to aio_context_setup() - aio-posix: gracefully handle io_uring_queue_init() failure - aio-posix: add aio_add_sqe() API for user-defined io_uring requests - aio-posix: avoid EventNotifier for cqe_handler_bh 4. Use aio_add_sqe() in block/io_uring.c instead of creating a dedicated io_uring context for --blockdev aio=io_uring. This simplifies the code, reduces the number of file descriptors, and demonstrates the aio_add_sqe() API. - block/io_uring: use aio_add_sqe() - block/io_uring: use non-vectored read/write when possible The highlight is aio_add_sqe(), which is needed for the FUSE-over-io_uring Google Summer of Code project and other future QEMU features that natively use Linux io_uring functionality.
..> Stefan Hajnoczi (15):
aio-posix: fix race between io_uring CQE and AioHandler deletion aio-posix: fix fdmon-io_uring.c timeout stack variable lifetime aio-posix: fix spurious return from ->wait() due to signals aio-posix: keep polling enabled with fdmon-io_uring.c tests/unit: skip test-nested-aio-poll with io_uring aio-posix: integrate fdmon into glib event loop aio: remove aio_context_use_g_source() aio: free AioContext when aio_context_new() fails aio: add errp argument to aio_context_setup() aio-posix: gracefully handle io_uring_queue_init() failure aio-posix: unindent fdmon_io_uring_destroy() aio-posix: add fdmon_ops->dispatch() aio-posix: add aio_add_sqe() API for user-defined io_uring requests block/io_uring: use aio_add_sqe() block/io_uring: use non-vectored read/write when possible
Is there anything in there which should go to qemu-stable? From the descriptions of a few changes it feels like something should. Thanks, /mjt
