]> git.proxmox.com Git - mirror_qemu.git/commit
block: Fix AioContext locking in qmp_block_resize()
authorKevin Wolf <kwolf@redhat.com>
Fri, 8 Dec 2023 12:43:52 +0000 (13:43 +0100)
committerStefan Hajnoczi <stefanha@redhat.com>
Tue, 12 Dec 2023 12:43:15 +0000 (07:43 -0500)
commit755ae3811fec77d94e92398632cbfe23c4ecffd5
treede06871358c7f697dc0b6cf9c4b6b20d6c443dbf
parenteaae59af4035770975b0ce9364b587223a909501
block: Fix AioContext locking in qmp_block_resize()

The AioContext must be unlocked before calling blk_co_unref(), because
it takes the AioContext lock internally in blk_unref_bh(), which is
scheduled in the main thread. If we don't unlock, the AioContext is
locked twice and nested event loops such as in bdrv_graph_wrlock() will
deadlock.

Cc: <qemu-stable@nongnu.org>
Fixes: https://issues.redhat.com/browse/RHEL-15965
Fixes: 0c7d204f50c382c6baac8c94bd57af4a022b3888
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Message-ID: <20231208124352.30295-1-kwolf@redhat.com>
blockdev.c