Marcelo Tosatti writes ("[Qemu-devel] [PATCH] QEMU: fsync AIO writes on flush request "): > Its necessary to guarantee that pending AIO writes have reached stable > storage when the flush request returns.
Surely it isn't necessary to call qemu_aio_flush ? Because those pending AIO writes have not yet been returned to the guest as complete, the guest is not entitled to assume that a FLUSH CACHE command (issued before those writes have completed) completing successfully means that those interleaved writes have reached stable storage. Also, this patch does a synchronous flush (which is bad because it stalls the guest while the flush takes place) and it ignores any error return (which is quite bad - see my other messages about bdrv_flush, caches, etc.) So I think it would be better to apply - my bdrv_flush patch from February which I've reposted today and then - the asynchronous FLUSH CACHE patch which I've posted today I think we concluded last time that the change of fsync to fdatasync is correct but I think we should wait for the dust to settle before introducing another change on top of all this ... Ian. ------------------------------------------------------------------------- Check out the new SourceForge.net Marketplace. It's the best place to buy or sell services for just about anything Open Source. http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace _______________________________________________ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel