[PATCH 1/2] qemuCheckpointDiscardBitmaps: Refuse to delete checkpoint with NULL bitmap name
Peter Krempa
pkrempa at redhat.com
Mon Mar 22 14:30:45 UTC 2021
When a checkpoint is redefined without providing the domain XML, we
might end up with a definition where the per-disk bitmap name is not
set. Trying to delete such checkpoint would lead to a crash.
Refuse such deletion.
Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1941600
Signed-off-by: Peter Krempa <pkrempa at redhat.com>
---
src/qemu/qemu_checkpoint.c | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/src/qemu/qemu_checkpoint.c b/src/qemu/qemu_checkpoint.c
index 689a556959..d2a621a52b 100644
--- a/src/qemu/qemu_checkpoint.c
+++ b/src/qemu/qemu_checkpoint.c
@@ -206,6 +206,13 @@ qemuCheckpointDiscardBitmaps(virDomainObjPtr vm,
if (chkdisk->type != VIR_DOMAIN_CHECKPOINT_TYPE_BITMAP)
continue;
+ if (!chkdisk->bitmap) {
+ virReportError(VIR_ERR_INVALID_ARG,
+ _("missing bitmap name for disk '%s' of checkpoint '%s'"),
+ chkdisk->name, chkdef->parent.name);
+ return -1;
+ }
+
if (qemuCheckpointDiscardDiskBitmaps(domdisk->src, blockNamedNodeData,
chkdisk->bitmap,
actions, domdisk->dst,
--
2.29.2
More information about the libvir-list
mailing list