[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-block] [Qemu-devel] [PATCH v2 00/11] bitmaps: allow bitmaps to
Re: [Qemu-block] [Qemu-devel] [PATCH v2 00/11] bitmaps: allow bitmaps to be used with full and top
Wed, 17 Jul 2019 15:35:42 -0400
Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.7.2
On 7/15/19 8:01 PM, John Snow wrote:
> Based-on: https://github.com/jnsnow/qemu/tree/bitmaps
> This follows the previous series which adds the 'bitmap' sync mode
> and uses it to add interactions with bitmaps to the 'full' and 'top'
> modes to blockdev-backup and drive-backup.
> on-success: Can conveniently synchronize a bitmap to a full backup.
> Allows for transactionless anchor backups.
> Allows us to attempt an anchor backup without damaging
> our bitmap until the backup is successful.
> Allows for transactional, ungrouped anchor backups.
> always: Allows us to resume full/top style backups with a later
> invocation to sync=bitmap. Neat!
> 1-3: Refactor iotest 257 to accommodate this;
> 4-5: Augment 257 to test trivial failure cases
> 6-9: Refactor sync=top for block/backup
> 10: Implement feature
> 11: Test feature
> [----] : patches are identical
> [####] : number of functional differences between upstream/downstream patch
> [down] : patch is downstream-only
> The flags [FC] indicate (F)unctional and (C)ontextual differences,
> 001/11: [FC] 'iotests/257: add Pattern class'
> 002/11: [FC] 'iotests/257: add EmulatedBitmap class'
> 003/11: [FC] 'iotests/257: Refactor backup helpers'
> 004/11:[----] [--] 'block/backup: hoist bitmap check into QMP interface'
> 005/11: [FC] 'iotests/257: test API failures'
> 006/11:[down] 'block/backup: improve sync=bitmap work estimates'
> 007/11:[down] 'block/backup: centralize copy_bitmap initialization'
> 008/11:[down] 'block/backup: add backup_is_cluster_allocated'
> 009/11:[down] 'block/backup: teach TOP to never copy unallocated regions'
> 010/11: [FC] 'block/backup: support bitmap sync modes for non-bitmap
> 011/11: [FC] 'iotests/257: test traditional sync modes'
> 001: Fallout from changing floor(x / y) to x // y.
> Fallout from changing x = x | y to x |= y.
> (Decided not to keep RB.)
> 002: Removed dead variable
> Change x = x - y to x -= y in clear_bits()
> 003: Substantially reorganize patch. Hopefully 10% more clever and 10% less
> 004: (Added RB.)
> 005: Added docstring to test_backup_api
> Fixed test matrix enumeration to have consistent order in python2/3
> (Declined RB.)
> ---: What was patch 006 was dropped, and became patches 6-9.
> 6-9: New!
> 010: Was 007;
> Formatting fix.
> (Added RB.)
> 011: Was 008;
> Adjust bitmap clearing/expected code as a consequence of #9.
> Fallout from changes to 005.
> John Snow (11):
> iotests/257: add Pattern class
> iotests/257: add EmulatedBitmap class
> iotests/257: Refactor backup helpers
> block/backup: hoist bitmap check into QMP interface
> iotests/257: test API failures
> block/backup: improve sync=bitmap work estimates
> block/backup: centralize copy_bitmap initialization
> block/backup: add backup_is_cluster_allocated
> block/backup: teach TOP to never copy unallocated regions
> block/backup: support bitmap sync modes for non-bitmap backups
> iotests/257: test traditional sync modes
> block/backup.c | 188 +-
> block/trace-events | 1 +
> blockdev.c | 32 +
> qapi/block-core.json | 6 +-
> tests/qemu-iotests/256.out | 4 +-
> tests/qemu-iotests/257 | 342 ++--
> tests/qemu-iotests/257.out | 3366 +++++++++++++++++++++++++++++++++++-
> 7 files changed, 3683 insertions(+), 256 deletions(-)
[Applied small edits to 9 and 11, and:]
Thanks, applied to my bitmaps tree:
Re: [Qemu-block] [Qemu-devel] [PATCH v2 00/11] bitmaps: allow bitmaps to be used with full and top,
John Snow <=
- Re: [Qemu-block] [PATCH v2 09/11] block/backup: teach TOP to never copy unallocated regions, (continued)