[RFC PATCH 02/16] qemu: checkpoint: split out checkpoint deletion bitmaps
Eric Blake
eblake at redhat.com
Fri Jan 24 17:13:01 UTC 2020
On 1/9/20 12:21 PM, Peter Krempa wrote:
> qemuCheckpointDiscard is a massive function that can be separated into
> smaller bits. Extract the part that actually modifies the disk from the
> metadata handling.
>
> Signed-off-by: Peter Krempa <pkrempa at redhat.com>
> ---
> src/qemu/qemu_checkpoint.c | 137 ++++++++++++++++++++-----------------
> 1 file changed, 76 insertions(+), 61 deletions(-)
>
> diff --git a/src/qemu/qemu_checkpoint.c b/src/qemu/qemu_checkpoint.c
> index d13d4c2a37..9ff3129570 100644
> --- a/src/qemu/qemu_checkpoint.c
> +++ b/src/qemu/qemu_checkpoint.c
> @@ -104,6 +104,81 @@ qemuCheckpointWriteMetadata(virDomainObjPtr vm,
> }
>
>
> +static int
> +qemuCheckpointDiscardBitmaps(virDomainObjPtr vm,
> + virDomainCheckpointDefPtr chkdef,
> + bool chkcurrent,
> + virDomainMomentObjPtr parent)
> +{
> + qemuDomainObjPrivatePtr priv = vm->privateData;
> + virQEMUDriverPtr driver = priv->driver;
> + virDomainMomentObjPtr moment;
> + virDomainCheckpointDefPtr parentdef = NULL;
> + bool search_parents;
> + int rc;
> + g_autoptr(virJSONValue) actions = NULL;
> + size_t i;
> + size_t j;
> +
> + if (!(actions = virJSONValueNewArray()))
> + return -1;
Can virJSONValueNewArray() still return failure now that we have shifted
to using g_new()?
But changing it (if needed) should be independent of the code motion
shown here.
Reviewed-by: Eric Blake <eblake at redhat.com>
--
Eric Blake, Principal Software Engineer
Red Hat, Inc. +1-919-301-3226
Virtualization: qemu.org | libvirt.org
More information about the libvir-list
mailing list