From 8ebd0fb74a0ed06259fc84b13b249756e7f432d3 Mon Sep 17 00:00:00 2001 From: "Yan, Zheng" Date: Fri, 15 Mar 2019 18:11:57 +0800 Subject: [PATCH] doc: add doc for cephfs lazyio Fixes: http://tracker.ceph.com/issues/38729 Signed-off-by: "Yan, Zheng" --- doc/cephfs/experimental-features.rst | 5 +++++ doc/cephfs/index.rst | 1 + doc/cephfs/lazyio.rst | 23 +++++++++++++++++++++++ 3 files changed, 29 insertions(+) create mode 100644 doc/cephfs/lazyio.rst diff --git a/doc/cephfs/experimental-features.rst b/doc/cephfs/experimental-features.rst index 7cd53be7e5bc4..3344a34d2a864 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 c66f1168a448a..d55701d137d92 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 0000000000000..6737932a16f00 --- /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. -- 2.39.5