From: Xiubo Li Date: Wed, 17 Jun 2026 01:14:43 +0000 (+0800) Subject: common/options: mark client_force_lazyio as not runtime updatable X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=a2f175f677f4e4cd276f8e27d950fe35ae54a8a3;p=ceph.git common/options: mark client_force_lazyio as not runtime updatable The client_force_lazyio option is currently marked as supporting runtime updates in the configuration schema, but this is misleading. The value is read once during each file open/create and stored in the file flags. There is no config observer registered to handle dynamic updates, and there is no logic to propagate changes to the already opened file handles. This patch adds the NO_RUNTIME flag to the option definition to correctly reflect reality. Fixes: https://tracker.ceph.com/issues/77451 Signed-off-by: Xiubo Li --- diff --git a/PendingReleaseNotes b/PendingReleaseNotes index 2e2a19fc25fe..b858940b1e2e 100644 --- a/PendingReleaseNotes +++ b/PendingReleaseNotes @@ -1,3 +1,9 @@ +* CephFS: The ``client_force_lazyio`` configuration option is now correctly marked + as not supporting runtime updates. Previously, the configuration schema indicated + this option could be changed at runtime, but changes had no effect on opened file + handlers in ceph-fuse or libcephfs clients because there is no logic to propagate + changes to open file handles. + * RADOS: PG autoscaler allows overlapping roots. Each root receives a PG target based on its OSDs, with OSDs shared across multiple roots contributing proportionally less to each root's allocation. diff --git a/doc/cephfs/lazyio.rst b/doc/cephfs/lazyio.rst index 01cb2704e5fb..cd6064ad4152 100644 --- a/doc/cephfs/lazyio.rst +++ b/doc/cephfs/lazyio.rst @@ -14,7 +14,7 @@ Enable LazyIO LazyIO can be enabled in the following ways. - ``client_force_lazyio`` option enables LAZY_IO globally for libcephfs and - ceph-fuse mount. + ceph-fuse mount. This is strictly a startup flag. - ``ceph_lazyio(...)`` and ``ceph_ll_lazyio(...)`` enable LAZY_IO for file handle in libcephfs. diff --git a/src/common/options/mds-client.yaml.in b/src/common/options/mds-client.yaml.in index 2e7ee29bc3bd..94d717dfbe90 100644 --- a/src/common/options/mds-client.yaml.in +++ b/src/common/options/mds-client.yaml.in @@ -333,6 +333,8 @@ options: default: false services: - mds_client + flags: + - startup - name: fuse_use_invalidate_cb type: bool level: advanced