OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

virtio-comment message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


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


Il 17/09/2013 03:20, Rusty Russell ha scritto:
> bdrv_co_flush() calls:
> 
>         bs->drv->bdrv_co_flush_to_disk
> 
> or if that's NULL:
> 
>         bs->drv->bdrv_aio_flush
> 
> or if that's NULL, does nothing.
> 
> Now, qcow2 doesn't set bdrv_co_flush_to_disk or bdrv_aio_flush.

It also does

   bdrv_co_flush(bs->file);

and that's where bdrv_co_flush_to_disk gets called.

> It seems a raw file will get an fdatasync, via bdrv_aio_flush() ->
> raw_aio_flush(), but strace shows no fsync/fdatasync calls, even when I
> just a raw file, and type "sync" in the guest:

That's the same path that gets qcow2 flushed, actually.  You need
"strace -ff" because the flush is done in a thread pool.

> So perhaps if you use the right back ends and set your non-default
> options just right you can have your data safe on disk?  But you're
> certainly not convincing me anyone wants it...

I'm 100% sure that QEMU gets data safely on disk. :)

Paolo


[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]