On Thu, Apr 06, 2017 at 07:32:01AM -0700, Dan Williams wrote: > On Thu, Apr 6, 2017 at 2:43 AM, Stefan Hajnoczi <stefa...@gmail.com> wrote: > > On Fri, Mar 31, 2017 at 04:41:43PM +0800, Haozhong Zhang wrote: > * I don't think we can just skip implementing support for this flush. > Yes it's virtualization unfriendly, but it completely defeats the > persistence of persistent memory if the host filesystem is free to > throw away writes that the guest expects to find after a surprise > power loss.
Right, if we don't implement Address Flush Hints then the only safe option for configurations that require them would be to print an error and refuse to start. This synchronous fsync(2) business is like taking a host page fault or being scheduled out by the host scheduler. It means the vcpu is stuck for a little bit. Hopefully not long enough to upset the guest kernel or the application. One of the things that guest software can do to help minimize the performance impact is to avoid holding locks across the address flush mmio write instruction. Stefan
signature.asc
Description: PGP signature