On 07.09.2011, at 11:24, Avi Kivity wrote: > Currently cache=unsafe is unsafe to the point of unusability - the > caches are never written to disk except on exit so anything except > an orderly exit -- including live migration -- leaves the disk image > corrupted. > > Fix by interpreting flush requests and doing everything except flushing > the underlying file. The contents of the metadata cache are transferred > to the host pagecache, so that qemu aborts keep the disk in a consistent > state, and live migration (on the same host, or if using a coherent > filesystem) works.
Yes, I've seen breakage with cache=unsafe and qcow2 myself. Thus semantically, the patch seems very reasonable to me. However, I'll leave it to Kevin to decide if it's a good idea to just unset random flags in open() or if we want to have something more expressive there :) Alex