qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCHv2] block: add native support for NFS


From: Peter Lieven
Subject: Re: [Qemu-devel] [PATCHv2] block: add native support for NFS
Date: Wed, 18 Dec 2013 18:21:55 +0100

Am 18.12.2013 um 11:38 schrieb Paolo Bonzini <address@hidden>:

> Il 18/12/2013 11:24, Orit Wasserman ha scritto:
>>>> 
>>>> For live migration we need the sync option (async ignores O_SYNC and
>>>> O_DIRECT sadly),
>>>> will it be supported? or will it be the default?
>>> 
>>> Since this is bypassing the client kernel FS I/O layer question around
>>> support of things like O_SYNC/O_DIRECT are not applicable.
>>> 
>> 
>> so no live migration support?
> 
> No, live migration just works.
> 
> O_SYNC is not used anymore in QEMU, we just issue a flush after every write.
> 
> And all protocol drivers except files/block devices _always_ bypass the
> kernel page cache (libiscsi, NBD, ceph, and now libnfs) so they are
> always behaving as if they had O_DIRECT.  For these protocols,
> cache=writeback and cache=none are entirely the same.

Not completely I think, but please correct me if I am wrong.

If cache=writeback is set we issue just a write. In libnfs or libiscsi case
that guarantees that the request has been successfully executed
on the target / server. This is enough to be consistent in case of
migration because consecutive reads will be answered correctly.

But the target / server is still free to just keep this
data in memory so we should only set this if we know that the target / server
e.g. has a battery backup or we know that the filesystem uses e.g. barriers and
issues a flush at important points.

If cache=none is set we issue a flush after every single write. In the libiscsi
case we issue a synchronize cache which should also guarantee that
data is flushed to disk. I hope that the NFS_COMMIT does the same in the
libnfs case?!

BR,
Peter




reply via email to

[Prev in Thread] Current Thread [Next in Thread]