Commit d56de074 authored by Stefano Stabellini's avatar Stefano Stabellini
Browse files

xen_disk: when using AIO flush after the operation is completed



If ioreq->postsync call bdrv_flush when the AIO operation is actually
completed.

Signed-off-by: default avatarStefano Stabellini <stefano.stabellini@eu.citrix.com>
parent 82091410
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -330,6 +330,9 @@ static void qemu_aio_complete(void *opaque, int ret)
    if (ioreq->aio_inflight > 0) {
        return;
    }
    if (ioreq->postsync) {
        bdrv_flush(ioreq->blkdev->bs);
    }

    ioreq->status = ioreq->aio_errors ? BLKIF_RSP_ERROR : BLKIF_RSP_OKAY;
    ioreq_unmap(ioreq);
@@ -376,9 +379,6 @@ static int ioreq_runio_qemu_aio(struct ioreq *ioreq)
        goto err;
    }

    if (ioreq->postsync) {
        bdrv_flush(blkdev->bs); /* FIXME: aio_flush() ??? */
    }
    qemu_aio_complete(ioreq, 0);

    return 0;