summary refs log tree commit diff stats
path: root/scripts/qapi/source.py
diff options
context:
space:
mode:
authorVladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>2019-09-20 11:25:43 +0300
committerJohn Snow <jsnow@redhat.com>2019-10-17 17:02:32 -0400
commitd2c3080e41fd2c9bc36c996cc9d33804462ba803 (patch)
treefaa16eec6452d036d5762ca0329a4ecdcb0b1ab2 /scripts/qapi/source.py
parentb56a1e31759b750e111b4dd35171007bf493fc89 (diff)
downloadfocaccia-qemu-d2c3080e41fd2c9bc36c996cc9d33804462ba803.tar.gz
focaccia-qemu-d2c3080e41fd2c9bc36c996cc9d33804462ba803.zip
block/qcow2: proper locking on bitmap add/remove paths
qmp_block_dirty_bitmap_add and do_block_dirty_bitmap_remove do acquire
aio context since 0a6c86d024c52b. But this is not enough: we also must
lock qcow2 mutex when access in-image metadata. Especially it concerns
freeing qcow2 clusters.

To achieve this, move qcow2_can_store_new_dirty_bitmap and
qcow2_remove_persistent_dirty_bitmap to coroutine context.

Since we work in coroutines in correct aio context, we don't need
context acquiring in blockdev.c anymore, drop it.

Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
Reviewed-by: John Snow <jsnow@redhat.com>
Message-id: 20190920082543.23444-4-vsementsov@virtuozzo.com
Signed-off-by: John Snow <jsnow@redhat.com>
Diffstat (limited to 'scripts/qapi/source.py')
0 files changed, 0 insertions, 0 deletions