[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [ANNOUNCE] libblkio v0.1.0 preview release
From: |
Stefan Hajnoczi |
Subject: |
Re: [ANNOUNCE] libblkio v0.1.0 preview release |
Date: |
Fri, 30 Apr 2021 17:20:54 +0100 |
On Thu, Apr 29, 2021 at 04:00:38PM +0100, Richard W.M. Jones wrote:
> On Thu, Apr 29, 2021 at 03:41:29PM +0100, Stefan Hajnoczi wrote:
> > On Thu, Apr 29, 2021 at 03:22:59PM +0100, Richard W.M. Jones wrote:
> > > This is where I get confused about what this library actually does.
> > > It's not just a nicer wrapper around io_uring, but what is it actually
> > > doing?
> >
> > It's a library for what QEMU calls protocol drivers (POSIX files,
> > userspace NVMe driver, etc). In particular, anything offering
> > multi-queue block I/O fits into libblkio.
> >
> > It is not intended to replace libnbd or other network storage libraries.
> > libblkio's properties API is synchronous to keep things simple for
> > applications. Attaching to network storage needs to be asynchronous,
> > although the libblkio API could be extended if people want to support
> > network storage.
>
> I think what confuses me is why is NVMe any different from io_uring?
> ie would this work?
>
> $ blkio-info --output=json io_uring path=/dev/nvme0
The libblkio io_uring driver can handle /dev/nvme* block devices.
The future userspace NVMe driver mentioned above will be a VFIO PCI
driver, like the block/nvme.c driver in QEMU today. It uses a PCI device
directly, not a /dev/nvme* block device.
Stefan
signature.asc
Description: PGP signature
Re: [ANNOUNCE] libblkio v0.1.0 preview release, Kevin Wolf, 2021/04/29