]> git.proxmox.com Git - mirror_qemu.git/commit - block.c
block: Align requests in bdrv_co_do_pwritev()
authorKevin Wolf <kwolf@redhat.com>
Tue, 3 Dec 2013 15:34:41 +0000 (16:34 +0100)
committerKevin Wolf <kwolf@redhat.com>
Fri, 24 Jan 2014 16:40:02 +0000 (17:40 +0100)
commit3b8242e0ea2a2c201ef3d1bd24080490dae33080
tree64304edc8321e44ba9520304431e961ebf7fbdd7
parent6460440f34c709461b84375cfd8a86b27d433225
block: Align requests in bdrv_co_do_pwritev()

This patch changes bdrv_co_do_pwritev() to actually be what its name
promises. If requests aren't properly aligned, it performs a RMW.

Requests touching the same block are serialised against the RMW request.
Further optimisation of this is possible by differentiating types of
requests (concurrent reads should actually be okay here).

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Reviewed-by: Max Reitz <mreitz@redhat.com>
Reviewed-by: Benoit Canet <benoit@irqsave.net>
block.c