mirror of
https://github.com/xemu-project/xemu.git
synced 2024-11-23 11:39:53 +00:00
Call qemu_bh_delete at bdrv_aio_bh_cb.
Also replave qemu_bh_cancel with qemu_bh_delete in bdrv_aio_cancel_em. Otherwise the bh will live forever in the bh list. Signed-off-by: Dor Laor <dor@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
This commit is contained in:
parent
3fe5c14e74
commit
6a7ad2998c
4
block.c
4
block.c
@ -1373,7 +1373,7 @@ typedef struct BlockDriverAIOCBSync {
|
||||
static void bdrv_aio_cancel_em(BlockDriverAIOCB *blockacb)
|
||||
{
|
||||
BlockDriverAIOCBSync *acb = (BlockDriverAIOCBSync *)blockacb;
|
||||
qemu_bh_cancel(acb->bh);
|
||||
qemu_bh_delete(acb->bh);
|
||||
qemu_aio_release(acb);
|
||||
}
|
||||
|
||||
@ -1390,7 +1390,7 @@ static void bdrv_aio_bh_cb(void *opaque)
|
||||
qemu_iovec_from_buffer(acb->qiov, acb->bounce, acb->qiov->size);
|
||||
qemu_vfree(acb->bounce);
|
||||
acb->common.cb(acb->common.opaque, acb->ret);
|
||||
|
||||
qemu_bh_delete(acb->bh);
|
||||
qemu_aio_release(acb);
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user