BSDCan2019 - 1.8

BSDCan 2019
The Technical BSD Conference

Ori Bernstein
Day Talks #2 - 18 May - 2019-05-18
Room DMS 1140
Start time 14:45
Duration 01:00
ID 1058
Event type Lecture
Track Hacking
Language used for presentation English


Snapshots 'Til the Cows Come Home

As of OpenBSD 6.4, VMD supports QEMU's QCOW2 disk format. This talk will go over what QCOW2 is and how it's implemented internally.

Until recently, OpenBSD's VMD only supported raw disk images. Raw images are large, lack snapshot support, and are clunky overall. In OpenBSD 6.4, support for QCOW2 disk images landed.

QCOW2 is a copy on write disk format that supports lazy growth and external snapshots, among other features. It does this by keeping a page-table like cluster map. This keeps space use down, and allows a lot of nifty snapshotting features. But there's no such thing as a free lunch: QCOW2 images pay a price in both performance and robustness.

In this talk, I'll give an overview of QCOW2 features before making a sharp turn into into the details of the disk format, how to use it, and how I implemented it on OpenBSD.