Re: ublk-qcow2: ublk-qcow2 is available

From: Stefan Hajnoczi
Date: Thu Oct 13 2022 - 12:01:25 EST


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 <rjones@xxxxxxxxxx> 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

Attachment: signature.asc
Description: PGP signature