yes, I got your point, thanks very much Eric.  

If I want to take a distributed snapshot, which need pause all the VMs and then take snapshot, how can I control the pause for all the VMs?   

Is there only way that I turn to freeze/thaw functions?  

and freeze/thaw only for file systems, not for the whole guest, am I right?    Thanks a lot!

Best,
Yuanzhen


On Wed, Aug 6, 2014 at 11:35 AM, Eric Blake <eblake@redhat.com> wrote:
On 08/06/2014 08:36 AM, Yuanzhen Gu wrote:

[please don't top-post on technical lists]

> Thanks very much Eric!  This is exactly what I guessed, I just wondering
> where I could find this piece of code and control the the pause time of
> guest, while the snapshot being taken?  thanks !

Actually, for new enough qemu (one with the 'transaction' QMP command),
or for a guest where only one disk is being snapshotted, there is no
pause required.  See qemuDomainSnapshotCreateDiskActiveExternal in
src/qemu/qemu_driver.c.  When a pause is required, it is only for the
fraction of a second required to issue a followup qemu QMP command to
resume the guest, so there is no need for a knob to control the pause
time (it is as already as fast as possible).

--
Eric Blake   eblake redhat com    +1-919-301-3266
Libvirt virtualization library http://libvirt.org