ublk virtual block devices in user space - DevConf.CZ 2023
Channel: DevConf
Date: 12/07/2023

Speaker(s): Stefano Garzarella; German Maglione

ublk is a new framework for implementing virtual block devices in user space that has recently been merged into the Linux kernel. ublk leverages io_uring to provide high performance and parallelism.

Virtual block devices provide storage abstraction and isolation for cloud computing and container environments. Over the years there have been various attempts to implement them in the kernel (such as loop, qcow2, NBD, etc.) mainly for performance. Since we now have a fast interface such as ublk, we can move the implementation of these devices to user space. This approach provides increased safety, flexibility, and ease of debugging.

German and Stefano will introduce ublk and io_uring during the talk, discuss some use cases, and their usage in QEMU Storage Daemon (QSD) leveraging QEMU's block layer capabilities. QSD supports all QEMU image formats and protocols, and provides multiple types of export such as NBD, vhost-user, VDUSE, fuse, and soon ublk (thanks to an Outreachy internship).

https://sched.co/1MYlg