Skip to content

Draft: Integration with libblkio

Nir Soffer requested to merge libblkio into master

libblkio is a high performance and easy to use library, providing unified interface for many drivers. The interesting drivers for blkhash are:

  • io_uring: for reading raw image on a block device
  • virtio-blk-vhost-user: for reading qcow2 images on block device or file via qemu-storage-daemon

Using virtio-blk-vhost-user driver we can do zero copy via shared memory between blkhash and qemu-storage-daemon.

liblkio does not support getting block status since block devices do not support this feature, so reading from sparse file is typically faster using NBD, but since liblkio is much faster reading data, it depends on how sparse is the image.

This change adds a blkiosum test command integrating with liblkio. This can be used for performance testing before we integrate libblkio with blksum.

Merge request reports