28.06.2017 16:01, Paolo Bonzini wrote:
On 28/06/2017 14:05, Vladimir Sementsov-Ogievskiy wrote:
Rebase on master, so changes, mostly related to new dirty bitmaps mutex:
10: - asserts now in bdrv_{re,}set_dirty_bitmap_locked functions.
- also add assert into bdrv_undo_clear_dirty_bitmap (the only change, not
related to rebase)
- add mutex lock into bdrv_dirty_bitmap_set_readonly (as it changes bitmap
list,
so the lock should be taken)
- return instead of go-to in qmp_block_dirty_bitmap_clear
- in dirty-bitmaps.h, move bdrv_dirty_bitmap_set_readonly before block
"Functions that require manual locking", move
bdrv_dirty_bitmap_readonly and bdrv_has_readonly_bitmaps into this block
15: - add mutex lock/unlock into bdrv_dirty_bitmap_set_autoload
- in dirty-bitmaps.h, move bdrv_dirty_bitmap_set_autoload before block
"Functions that require manual locking", move
bdrv_dirty_bitmap_get_autoload into this block
17: - add mutex lock/unlock into bdrv_dirty_bitmap_set_persistance
- in dirty-bitmaps.h, move bdrv_dirty_bitmap_set_persistance before block
"Functions that require manual locking", move
bdrv_dirty_bitmap_get_persistance and
bdrv_has_changed_persistent_bitmaps into this block
18: in dirty-bitmaps.h, move bdrv_dirty_bitmap_next into block
"Functions that require manual locking". (do not remove r-b, as it is
just one empty line removed before function declaration)
23: return instead of go-to in qmp_block_dirty_bitmap_add
24: return instead of go-to in qmp_block_dirty_bitmap_add
25: - return instead of go-to
- remove aio_context_acquire/release calls
- no aio_context parameter for block_dirty_bitmap_lookup
- in dirty-bitmaps.h, move bdrv_dirty_bitmap_sha256 into block
"Functions that require manual locking".
29: - return instead of go-to in qmp_block_dirty_bitmap_remove
All looks good, thanks. I'll rebase my own fixes on top of these
patches, no need to have you respin them.
Paolo
Thank you! And for thunderbird-work-around too!
--
Best regards,
Vladimir