On Sun, May 29, 2011 at 11:54:25AM +0300, Avi Kivity wrote: > On 05/24/2011 12:31 AM, Marcelo Tosatti wrote: > >Support live image copy + switch. That is, copy an image backing > >a guest hard disk to a destination image (destination image must > >be created separately), and switch to this copy. > > > >Command syntax: > > > >block_copy device filename [-i] -- live block copy device to image > > -i for incremental copy (base image shared between src and > > destination) > > > >Please refer to qmp-commands diff for more details. > > IMO it would have been nicer to use the mirror driver for all > copying; there would be no STAGE_DIRTY; simply a background process > that copies over all blocks, taking care not to conflict with > ongoing writes.
Don't see the advantage of doing that. Disadvantages: - Guest write performance is affected during copying (guest writes compete with stream of writes from copy). - Complexity to handle copy write conflict (there is no need to handle that with current solution). - Unability to have the mirror functionality in a separate driver. > It would also remove the conflict with migration. There is no fundamental problem with migration, its simply unsupported now. > But that's an implementation detail and can be changed later.