Re: [virtio] Re: [virtio-comment] Problems with VIRTIO-4 and writeback only disks

From
Paolo Bonzini <>
Date
2013-09-16T09:35:01+00:00
ID
Thread
Re: [virtio] Re: [virtio-comment] Problems with VIRTIO-4 and writeback only disks
Il 16/09/2013 03:34, Rusty Russell ha scritto:
>> > The default WCE=0 semantics should be that the host ensures every write
>> > reaches stable storage.
> Here's the problem: I don't think anyone will really implement this.
> 
> lguest certainly doesn't flush every write, not bhyve.  Xen famously
> didn't.  I can't see where qemu does it either, but it could be buried
> in the aio stuff?
> 

It's here in block.c's bdrv_co_do_writev:

    if (ret < 0) {
        /* Do nothing, write notifier decided to fail this request */
    } else if (flags & BDRV_REQ_ZERO_WRITE) {
        ret = bdrv_co_do_write_zeroes(bs, sector_num, nb_sectors);
    } else {
        ret = drv->bdrv_co_writev(bs, sector_num, nb_sectors, qiov);
    }

    if (ret == 0 && !bs->enable_write_cache) {
        ret = bdrv_co_flush(bs);
    }

Paolo