On Thu, Mar 12, 2020 at 15:17:32 +0800, Zhenyu Ye wrote: > QEMU has added support for io_uring IO mode, see: > > https://git.qemu.org/git/qemu.git/ adcd6e93. > > This patch add support for io_uring in libvirt. > > Signed-off-by: Zhenyu Ye <yezhenyu2@xxxxxxxxxx> > --- > src/conf/domain_conf.c | 1 + > src/conf/domain_conf.h | 1 + > 2 files changed, 2 insertions(+) > > diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c > index d2d97daf80..5ced2f3b6b 100644 > --- a/src/conf/domain_conf.c > +++ b/src/conf/domain_conf.c > @@ -361,6 +361,7 @@ VIR_ENUM_IMPL(virDomainDiskIo, > "default", > "native", > "threads", > + "io_uring", > ); > > VIR_ENUM_IMPL(virDomainDeviceSGIO, > diff --git a/src/conf/domain_conf.h b/src/conf/domain_conf.h > index 91b776c28a..905fdecab3 100644 > --- a/src/conf/domain_conf.h > +++ b/src/conf/domain_conf.h > @@ -421,6 +421,7 @@ typedef enum { > VIR_DOMAIN_DISK_IO_DEFAULT = 0, > VIR_DOMAIN_DISK_IO_NATIVE, > VIR_DOMAIN_DISK_IO_THREADS, > + VIR_DOMAIN_DISK_IO_URING, > > VIR_DOMAIN_DISK_IO_LAST > } virDomainDiskIo; Hi, this unfortunately is far from complete. You'll need to provide: - XML schema additions (docs/schemas/domaincommon.rng) - documentation (docs/formatdomain.html.in) - a qemu capability flag to check whether it's supported: (src/qemu/qemu_capabilities.c/h), you can use the QAPI capability query string to check it: blockdev-add/arg-type/+file/aio/^io_uring - a validation entry to reject config if the above capability is not present (qemuDomainValidateStorageSource src/qemu/qemu_domain.c) - a test case for at least qemuxml2argv and qemuxml2xmltest, enhancing existing test files is okay (tests/qemuxml2argvdata), the test case must show that the appropriate qemu command line is generated Please split the above additions to patches at least: - src/conf/ and docs/ additions - src/qemu/qemu_capabilities additions - validation additions - tests and please follow the contributor guidelines. Specifically the part tha the whole tree must compile cleanly after every patch so the changes must be split properly.