Hi, all
I'm a user of qemu/kvm, and I'm wondering some internals of qemu/kvm, so I'd better post it in
this developer's mailing list.
To be specific, I'm wondering how data is flushed to disk. Intuitively, when the guest issues a
SYNCHRONIZE CACHE command in the SCSI layer, qemu/kvm should call bdrv_co_flush(),
which will eventually call the block driver's bdrv_co_flush_to_os() and bdrv_co_flush_to_disk().
But from simple grep-ing, I didn't find any calling to bdrv_co_flush() is responsible for SYNCHRONIZE
CACHE. So, can you tell me how qemu/kvm ensures guest data be written on persistent storage?
Thank you, very much!