On Tue, Jun 18, 2013 at 04:52:11PM +0200, Kevin Wolf wrote: > Am 30.05.2013 um 14:34 hat Stefan Hajnoczi geschrieben: > > From: Dietmar Maurer <diet...@proxmox.com> > > > > backup_start() creates a block job that copies a point-in-time snapshot > > of a block device to a target block device. > > > > We call backup_do_cow() for each write during backup. That function > > reads the original data from the block device before it gets > > overwritten. The data is then written to the target device. > > > > Currently backup cluster size is hardcoded to 65536 bytes. > > > > [I made a number of changes to Dietmar's original patch and folded them > > in to make code review easy. Here is the full list: > > > > * Drop BackupDumpFunc interface in favor of a target block device > > * Detect zero clusters with buffer_is_zero() and use bdrv_co_write_zeroes() > > * Use 0 delay instead of 1us, like other block jobs > > * Unify creation/start functions into backup_start() > > * Simplify cleanup, free bitmap in backup_run() instead of cb > > * function > > * Use HBitmap to avoid duplicating bitmap code > > * Use bdrv_getlength() instead of accessing ->total_sectors > > * directly > > * Delete the backup.h header file, it is no longer necessary > > * Move ./backup.c to block/backup.c > > * Remove #ifdefed out code > > * Coding style and whitespace cleanups > > * Use bdrv_add_before_write_notifier() instead of blockjob-specific hooks > > * Keep our own in-flight CowRequest list instead of using block.c > > tracked requests. This means a little code duplication but is much > > simpler than trying to share the tracked requests list and use the > > backup block size. > > * Add on_source_error and on_target_error error handling. > > > > -- stefanha] > > > > Signed-off-by: Dietmar Maurer <diet...@proxmox.com> > > Signed-off-by: Stefan Hajnoczi <stefa...@redhat.com> > > > > backup size fixes > > > > Signed-off-by: Stefan Hajnoczi <stefa...@redhat.com> > > You probably didn't want to have the second part in the final commit > message?
Thanks for pointing this out. I overlooked it when squashing. Will fix. Stefan