
On 08/12/2011 02:56 AM, Philipp Hahn wrote:
For -loadvm to work you have to call kvm with the nearly same command line arguments again; what may change you probably know better than me. For I thinks it's essential to store the VM consiguration with the snapshot, which would be the qemu command line arguments, which is equivalent to libvirts XML description.
Yes, I understand this. I was talking about snapshots taken while the VM is shut off, where it's not as clear.
I think is very useful for offline snapshots too, since your VM might depends on the exact qemu command line: think of (incomplete) RAIDs or udevs persistent MAC address rules.
But for consistency it's probably better to do the same with offline and online snapshots, so what libvirt implements (or was it only Eric's plan?) is fine here.
My plan is to do full-scale revert to the embedded <domain>, whether the checkpoint was online or offline. To go from running to an online checkpoint when the <domain> is still ABI compatible, I will continue to use the 'loadvm' monitor command; for all other cases, loading an online checkpoint will create a new qemu process with the '-loadvm' command line argument.
Currently as of libvirt-0.9.4 the domain configuration is not saved with the snapshot. I have implemented that for our internal 0.8.4 version as a working proof-on-concept, but Eric is now reviewing the whole picture.
Yep, I'm heavily re-using Philipp's proof-of-concept in the part of my patch series that embeds the full <domain> into <domainsnapshot>. -- Eric Blake eblake@redhat.com +1-801-349-2682 Libvirt virtualization library http://libvirt.org