On 21.10.2011, at 11:44, Paolo Bonzini wrote: > On 10/21/2011 07:08 PM, Kevin Wolf wrote: >> Avi complained that not even writing out qcow2's cache on bdrv_flush() made >> cache=unsafe too unsafe to be useful. He's got a point. > > Why? cache=unsafe is explicitly allowing to s/data/manure/ on crash.
Exactly, but not on kill. By not flushing internal caches you're almost guaranteed to get an inconsistent qcow2 image. > If you do this for raw-posix, you need to do it for all protocols. Only for the ones that actually do flushes to the block layer. The idea is that while QEMU dies the OS can still finish writing unflushed blocks. Alex