Currently blocked by qemu: # grep IO_URING /boot/config-5.11.0-2.el9.x86_64 CONFIG_IO_URING=y # virsh edit avocado-vt-vm1 error: unsupported configuration: io uring is not supported by this QEMU binary Failed. Try again? [y,n,i,f,?]:
*** Bug 1946935 has been marked as a duplicate of this bug. ***
I think ON_QA is correct since the code from our side is already present in the current build.
FYI, we still do not plan to support io_uring in the RHEL 9.0 kernel. The goal is to enable support in an update release.
Tested on libvirt-9.3.0-2.el9.x86_64 qemu-kvm-8.0.0-4.el9.x86_64 kernel-5.14.0-316.el9.x86_64 liburing-0.7-7.el9.x86_64: Setup: 1. Set io_uring.enable=y in the host kernel cmdline Steps: 1. Start a domain with the disk of io_uring # ➜ ~ virsh dumpxml rhel-9.2 --xpath //disk <disk type="file" device="disk"> <driver name="qemu" type="qcow2" cache="none" io="io_uring" copy_on_read="on" ats="on" packed="o n"/> <source file="/var/lib/libvirt/images/rhel-9.2.qcow2" index="1"/> <backingStore/> <target dev="vda" bus="virtio"/> <alias name="virtio-disk0"/> <address type="pci" domain="0x0000" bus="0x02" slot="0x00" function="0x0"/> </disk> 2. Hot-plug a disk of io_uring. Copy a disk of io_uring. Then check their qmp log ➜ ~ cat /tmp/vdb.xml <disk type="file" device="disk"> <driver name="qemu" type="raw" cache="none" io="io_uring" copy_on_read="on" ats="on" packed="on"/> <source file="/var/lib/libvirt/images/vdb" index="1"/> <backingStore/> <target dev="vdb" bus="virtio"/> </disk> ➜ ~ virsh attach-device rhel-9.2 /tmp/vdb.xml Device attached successfully ➜ ~ virsh blockcopy rhel-9.2 vdb /var/lib/libvirt/images/copy --transient-job Block Copy started In qmp log, the "aio":"io_uring" is in the blockdev-add qmp. 57.048 > 0x7f6e700942f0 {"execute":"blockdev-add","arguments":{"driver":"file","filename":"/var/l ib/libvirt/images/vdb","aio":"io_uring","node-name":"libvirt-2-storage","cache":{"direct":true,"no -flush":false},"auto-read-only":true,"discard":"unmap"},"id":"libvirt-423"} 57.052 < 0x7f6e700942f0 {"return": {}, "id": "libvirt-423"} ... 2397.669 > 0x7f6e700942f0 {"execute":"blockdev-add","arguments":{"driver":"file","filename":"/var/ lib/libvirt/images/copy","aio":"io_uring","node-name":"libvirt-3-storage","cache":{"direct":true," no-flush":false},"auto-read-only":true,"discard":"unmap"},"id":"libvirt-433"} 2397.672 < 0x7f6e700942f0 {"return": {}, "id": "libvirt-433"}