From: Yan, Zheng Date: Fri, 15 Mar 2019 10:11:57 +0000 (+0800) Subject: doc: add doc for cephfs lazyio X-Git-Tag: v14.2.2~211^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=refs%2Fpull%2F27899%2Fhead;p=ceph.git doc: add doc for cephfs lazyio Fixes: http://tracker.ceph.com/issues/38729 Signed-off-by: "Yan, Zheng" (cherry picked from commit 8ebd0fb74a0ed06259fc84b13b249756e7f432d3) --- diff --git a/doc/cephfs/experimental-features.rst b/doc/cephfs/experimental-features.rst index 7cd53be7e5bc..3344a34d2a86 100644 --- a/doc/cephfs/experimental-features.rst +++ b/doc/cephfs/experimental-features.rst @@ -70,6 +70,11 @@ and may not work together; see above. Multiple filesystems were available starting in the Jewel release candidates but must be turned on via the ``enable_multiple`` flag until declared stable. +LazyIO +------ +LazyIO relaxes POSIX semantics. Buffered reads/writes are allowed even when a +file is opened by multiple applications on multiple clients. Applications are +responsible for managing cache coherency themselves. Previously experimental features ================================ diff --git a/doc/cephfs/index.rst b/doc/cephfs/index.rst index c66f1168a448..d55701d137d9 100644 --- a/doc/cephfs/index.rst +++ b/doc/cephfs/index.rst @@ -110,6 +110,7 @@ authentication keyring. Export over NFS Application best practices Scrub + LazyIO .. toctree:: :hidden: diff --git a/doc/cephfs/lazyio.rst b/doc/cephfs/lazyio.rst new file mode 100644 index 000000000000..6737932a16f0 --- /dev/null +++ b/doc/cephfs/lazyio.rst @@ -0,0 +1,23 @@ +====== +LazyIO +====== + +LazyIO relaxes POSIX semantics. Buffered reads/writes are allowed even when a +file is opened by multiple applications on multiple clients. Applications are +responsible for managing cache coherency themselves. + +Libcephfs supports LazyIO since nautilus release. + +Enable LazyIO +============= + +LazyIO can be enabled by following ways. + +- ``client_force_lazyio`` option enables LAZY_IO globally for libcephfs and + ceph-fuse mount. + +- ``ceph_lazyio(...)`` and ``ceph_ll_lazyio(...)`` enable LAZY_IO for file handle + in libcephfs. + +- ``ioctl(fd, CEPH_IOC_LAZYIO, 1UL)`` enables LAZY_IO for file handle in + ceph-fuse mount.