[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-changelog] [qemu-xen-3.4-testing] block: Clean up after deleting BHs

commit db34a17dce954b14efe2899ce5be0bcb3f06e512
Author: Ian Jackson <ian.jackson@xxxxxxxxxxxxx>
Date:   Wed Oct 7 15:57:18 2009 +0100

    block: Clean up after deleting BHs
    Commit 6a7ad299 ("Call qemu_bh_delete at bdrv_aio_bh_cb") deletes emulated
    aio bottom halves to prevent endless accumulation.  However, it leaves a
    stale ->bh pointer, which is then waited on when the aio is reused.
    Zeroing the pointer fixes the issue, allowing vmdk format images to be used.
    Signed-off-by: Avi Kivity <avi@xxxxxxxxxx>
    Signed-off-by: Anthony Liguori <aliguori@xxxxxxxxxx>
    [ Backported from 6bbff9a0b495918309074ac60375be5f9dc868b3
      by Stefano Stabellini. ]
    Signed-off-by: Ian Jackson <ian.jackson@xxxxxxxxxxxxx>
    (cherry picked from commit a05958b6e32f1748ea70b1efca13394956c0698b)
 block.c |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/block.c b/block.c
index bad2d3d..88e70d3 100644
--- a/block.c
+++ b/block.c
@@ -1523,6 +1523,7 @@ static void bdrv_aio_bh_cb(void *opaque)
     BlockDriverAIOCBSync *acb = opaque;
     acb->common.cb(acb->common.opaque, acb->ret);
+    acb->bh = NULL;
@@ -1562,6 +1563,7 @@ static void bdrv_aio_cancel_em(BlockDriverAIOCB *blockacb)
     BlockDriverAIOCBSync *acb = (BlockDriverAIOCBSync *)blockacb;
+    acb->bh = NULL;
generated by git-patchbot for /home/xen/git/qemu-xen-3.4-testing.git

Xen-changelog mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.