On Fri, 2017-07-21 at 09:29 -0400, Pankaj Gupta wrote: > > > > > > - Flush hint address traps from guest to host and do an > > > entire fsync > > > on backing file which itself is costly. > > > > > > - Can be used to flush specific pages on host backing disk. > > > We can > > > send data(pages information) equal to cache-line > > > size(limitation) > > > and tell host to sync corresponding pages instead of > > > entire disk > > > sync. > > > > Are you sure? Your previous point says only the entire device can > > be > > synced. The NVDIMM Adress Flush Hints interface does not involve > > address range information. > > Just syncing entire block device should be simple but costly. Costly depends on just how fast the backing IO device is. If the backing IO is a spinning disk, doing targeted range syncs will certainly be faster. On the other hand, if the backing IO is one of the latest generation SSD devices, it may be faster to have just one hypercall and flush everything, than it would be to have separate sync calls for each range that we want flushed. Should we design our interfaces for yesterday's storage devices, or for tomorrow's storage devices?