This patchset tries to implement transient option for qcow2 and raw
format disk. This uses the snapshot cleanup codes:
https://www.redhat.com/archives/libvir-list/2020-August/msg00299.html
It gets user available to set <transient/> to the domain xml file like as:
<disk type='file' device='disk'>
<driver name='qemu' type='qcow2'/>
<source file='/var/lib/libvirt/images/guest.qcow2'/>
<target dev='vda' bus='virtio'/>
<transient/>
</disk>
Any changes which the Guest does to the disk is dropped when the Guest
is shutdowned.
There are some limitations for transient disk option so far:
- Supported disk format is qcow2 and raw
- blockdev capability is required for qemu
- Following features are blocked with transient disk option
- blockjobs
- Migration
- Disk hotplug
Masayoshi Mizuma (7):
qemuSnapshotDiskPrepareOne: Get available even if snapdisk is NULL
qemu: Introduce functions to handle transient disk
qemu: Add transient disk handler to start and stop the guest
qemu: Transient option gets avaiable for qcow2 and raw format disk
qemu: Block blockjobs when transient disk option is enabled
qemu: Block migration when transient disk option is enabled
qemu: Block disk hotplug when transient disk option is enabled
src/qemu/qemu_domain.c | 7 ++
src/qemu/qemu_hotplug.c | 6 ++
src/qemu/qemu_migration.c | 22 ++++++
src/qemu/qemu_process.c | 8 +++
src/qemu/qemu_snapshot.c | 139 +++++++++++++++++++++++++++++++++++++-
src/qemu/qemu_snapshot.h | 8 +++
src/qemu/qemu_validate.c | 9 ++-
src/util/virstoragefile.h | 2 +
8 files changed, 196 insertions(+), 5 deletions(-)
--
2.27.0