On 01/14/2015 12:14 AM, John Ferlan wrote:
On 12/06/2014 11:32 AM, Shanzhi Yu wrote:
> When create inactive external snapshot, after update disk definitions,
> virDomainSaveConfig is needed, if not after restart libvirtd the new snapshot
> file definitions in xml will be lost.
>
> Reproduce steps:
>
> 1. prepare a shut off guest
> $ virsh domstate rhel7 && virsh domblklist rhel7
> shut off
>
> Target Source
> ------------------------------------------------
> vda /var/lib/libvirt/images/rhel7.img
>
> 2. create external disk snapshot
> $ virsh snapshot-create rhel7 --disk-only && virsh domblklist rhel7
> Domain snapshot 1417882967 created
> Target Source
> ------------------------------------------------
> vda /var/lib/libvirt/images/rhel7.1417882967
>
> 3. restart libvirtd then check guest source file
> $ service libvirtd restart && virsh domblklist rhel7
> Redirecting to /bin/systemctl restart libvirtd.service
> Target Source
> ------------------------------------------------
> vda /var/lib/libvirt/images/rhel7.img
>
> This was first reported by Eric Blake
>
http://www.redhat.com/archives/libvir-list/2014-December/msg00369.html
>
> Signed-off-by: Shanzhi Yu <shyu(a)redhat.com>
> ---
> src/qemu/qemu_driver.c | 3 +++
> 1 file changed, 3 insertions(+)
>
Looks like this one may have been lost in the shuffle prior to the
holidays...
Seems reasonable to me - although I'll wait a bit before pushing just in
case by popping it to the top of the stack again it causes more
discussion...
John
Thanks. I almost forgot it myself.
> diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c
> index 9152cf5..9f8ea0a 100644
> --- a/src/qemu/qemu_driver.c
> +++ b/src/qemu/qemu_driver.c
> @@ -12847,6 +12847,9 @@ qemuDomainSnapshotCreateInactiveExternal(virQEMUDriverPtr
driver,
> goto cleanup;
> }
> defdisk->src->format = snapdisk->src->format;
> +
> + if (virDomainSaveConfig(cfg->configDir, vm->def) < 0)
> + goto cleanup;
> }
> }
>
>
--
Regards
shyu