[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v2 00/11] bitmaps: allow bitmaps to be used with ful
From: |
John Snow |
Subject: |
[Qemu-devel] [PATCH v2 00/11] bitmaps: allow bitmaps to be used with full and top |
Date: |
Mon, 15 Jul 2019 20:01:06 -0400 |
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.
Why?
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!
Summary:
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
===
V2:
===
Key:
[----] : 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, respectively
001/11:[0010] [FC] 'iotests/257: add Pattern class'
002/11:[0003] [FC] 'iotests/257: add EmulatedBitmap class'
003/11:[0042] [FC] 'iotests/257: Refactor backup helpers'
004/11:[----] [--] 'block/backup: hoist bitmap check into QMP interface'
005/11:[0016] [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:[0002] [FC] 'block/backup: support bitmap sync modes for non-bitmap
backups'
011/11:[0058] [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
cute.
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(-)
--
2.21.0
- [Qemu-devel] [PATCH v2 00/11] bitmaps: allow bitmaps to be used with full and top,
John Snow <=
- [Qemu-devel] [PATCH v2 01/11] iotests/257: add Pattern class, John Snow, 2019/07/15
- [Qemu-devel] [PATCH v2 04/11] block/backup: hoist bitmap check into QMP interface, John Snow, 2019/07/15
- [Qemu-devel] [PATCH v2 02/11] iotests/257: add EmulatedBitmap class, John Snow, 2019/07/15
- [Qemu-devel] [PATCH v2 07/11] block/backup: centralize copy_bitmap initialization, John Snow, 2019/07/15
- [Qemu-devel] [PATCH v2 08/11] block/backup: add backup_is_cluster_allocated, John Snow, 2019/07/15
- [Qemu-devel] [PATCH v2 05/11] iotests/257: test API failures, John Snow, 2019/07/15