OSDN Git Service

qcow2: Always execute preallocate() in a coroutine
authorMax Reitz <mreitz@redhat.com>
Mon, 9 Oct 2017 21:55:32 +0000 (23:55 +0200)
committerMax Reitz <mreitz@redhat.com>
Thu, 26 Oct 2017 13:01:14 +0000 (15:01 +0200)
commit572b07bea1d1a0f7726fd95c2613c76002a379bc
tree0026335f2d6bda08fc0e9ecb37ea6074df3ae5dd
parente400ad1e1f0127b4fdabcb1c8de1e99be91788df
qcow2: Always execute preallocate() in a coroutine

Some qcow2 functions (at least perform_cow()) expect s->lock to be
taken.  Therefore, if we want to make use of them, we should execute
preallocate() (as "preallocate_co") in a coroutine so that we can use
the qemu_co_mutex_* functions.

Signed-off-by: Max Reitz <mreitz@redhat.com>
Message-id: 20171009215533.12530-3-mreitz@redhat.com
Cc: qemu-stable@nongnu.org
Reviewed-by: Eric Blake <eblake@redhat.com>
Reviewed-by: Jeff Cody <jcody@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Max Reitz <mreitz@redhat.com>
block/qcow2.c