On Thu, Oct 13, 2022 at 09:50:55AM +0800, Ming Lei wrote: > On Wed, Oct 12, 2022 at 10:15:28AM -0400, Stefan Hajnoczi wrote: > > On Thu, 6 Oct 2022 at 06:14, Richard W.M. Jones wrote: > > > > > > On Tue, Oct 04, 2022 at 09:53:32AM -0400, Stefan Hajnoczi wrote: > > > > qemu-nbd doesn't use io_uring to handle the backend IO, > > > > > > Would this be fixed by your (not yet upstream) libblkio driver for > > > qemu? > > > > I was wrong, qemu-nbd has syntax to use io_uring: > > > > $ qemu-nbd ... --image-opts driver=file,filename=test.img,aio=io_uring > > Yeah, I saw the option, previously when I tried io_uring via: > > qemu-nbd -c /dev/nbd11 -n --aio=io_uring $my_file > > It complains that 'qemu-nbd: Invalid aio mode 'io_uring'' even though > that 'qemu-nbd --help' does say that io_uring is supported. > > Today just tried it on Fedora 37, looks it starts working with > --aio=io_uring, but the IOPS is basically same with --aio=native, and > IO trace shows that io_uring is used by qemu-nbd. Okay, similar performance to Linux AIO is expected. That's what we've seen with io_uring in QEMU. QEMU doesn't use io_uring in polling mode, so it's similar to what we get with Linux AIO. Stefan