summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorVladimir Sementsov-Ogievskiy2020-03-11 11:30:03 +0100
committerMax Reitz2020-03-11 12:42:30 +0100
commit5332e5d21060c48511a73bc5dccd15960f7fa395 (patch)
treeae5c660faf23568b389d29e9295a205fe8ffa6a0 /include
parentblock/block-copy: rename start to offset in interfaces (diff)
downloadqemu-5332e5d21060c48511a73bc5dccd15960f7fa395.tar.gz
qemu-5332e5d21060c48511a73bc5dccd15960f7fa395.tar.xz
qemu-5332e5d21060c48511a73bc5dccd15960f7fa395.zip
block/block-copy: reduce intersecting request lock
Currently, block_copy operation lock the whole requested region. But there is no reason to lock clusters, which are already copied, it will disturb other parallel block_copy requests for no reason. Let's instead do the following: Lock only sub-region, which we are going to operate on. Then, after copying all dirty sub-regions, we should wait for intersecting requests block-copy, if they failed, we should retry these new dirty clusters. Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com> Reviewed-by: Andrey Shinkevich <andrey.shinkevich@virtuozzo.com> Message-Id: <20200311103004.7649-9-vsementsov@virtuozzo.com> Signed-off-by: Max Reitz <mreitz@redhat.com>
Diffstat (limited to 'include')
0 files changed, 0 insertions, 0 deletions